diff --git a/.updater/api/api-docs-enums.json b/.updater/api/api-docs-enums.json index 202bdfe6..62dbb30a 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":"Info","description":"Status und Information"},{"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":"Gui","description":"Basic GUI Control: Open and close SIRIUS Graphical User Interface (GUI) on specified projects."},{"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."}],"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 application","description":"Close project-space and remove it from application. 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"}}],"responses":{"200":{"description":"OK"}}}},"/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":{"description":"files to import into project","content":{"multipart/form-data":{"schema":{"type":"object","properties":{"inputFiles":{"type":"array","items":{"type":"string","format":"binary"}}}}}},"required":true},"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":{"type":"object","properties":{"inputFiles":{"type":"array","items":{"type":"string","format":"binary"}}}}}},"required":true},"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":{"description":"Files to import into project.","content":{"multipart/form-data":{"schema":{"type":"object","properties":{"inputFiles":{"type":"array","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters"}}}}},"required":true},"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":{"description":"Files to import into project.","content":{"multipart/form-data":{"schema":{"type":"object","properties":{"inputFiles":{"type":"array","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters"}}}}},"required":true},"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}/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":"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":"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/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":{"description":"files to be imported","content":{"multipart/form-data":{"schema":{"type":"object","properties":{"inputFiles":{"type":"array","items":{"type":"string","format":"binary"}}}}}},"required":true},"responses":{"200":{"description":"Job of the import command to be executed.","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":{"200":{"description":"OK","content":{"application/vnd.spring-boot.actuator.v3+json":{"schema":{"type":"object"}},"application/json":{"schema":{"type":"object"}},"application/vnd.spring-boot.actuator.v2+json":{"schema":{"type":"object"}}}}}}},"/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}/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}/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":"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: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable.","description":"Returns the traces of the given compound. 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.","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/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":"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}/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":"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: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable.","description":"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.","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":"List of spectral library matches for the given 'alignedFeatureId'.","description":"List of spectral library matches 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","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 matches of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpectralLibraryMatch"}}}}}}},"/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}/quantification":{"get":{"tags":["Features"],"summary":"EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable.","description":"Returns a single quantification table row for the given feature. The quantification table contains the intensity of the feature within all\n samples it is contained in.","operationId":"getQuantificationExperimental","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":"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/QuantificationMeasure"}}],"responses":{"200":{"description":"Quant table row for this feature","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantificationTableExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report":{"get":{"tags":["Features"],"summary":"EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable.","description":"Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"getAlignedFeaturesQualityExperimental","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 belong sto.","required":true,"schema":{"type":"string"}}],"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":"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":"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: This endpoint is experimental because it produces return values that are not yet stable.","description":"Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier\n These annotations are only available if a fragmentation tree is available.","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}}],"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: This endpoint is experimental because it produces return values that are not yet stable.","description":"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.","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"}}],"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 formula result identifier.","description":"Returns Lipid annotation (ElGordo) for the given formula result identifier.\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 (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting)\n for the given formula result identifier.","description":"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 This tree is used to rank formula candidates (treeScore).","description":"Returns fragmentation tree (SIRIUS) for the given formula result identifier\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\n This fingerprint is used to perform structure database search and predict compound classes.","description":"Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier\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":"Best matching compound classes,\n Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology,","description":"Best matching compound classes,\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.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier\n These annotations are only available if a fragmentation tree is available.","description":"Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier\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}}],"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 (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.","description":"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"}}],"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":"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":{"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"}}}}}}}},"/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: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable.","description":"Returns the adduct network for a given aligned feature id together with all merged traces contained in the network.","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/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":"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/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: use /job-configs to get all configs with names.","description":"Get all (non-default) job configuration names","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 contains also all available custom DB.","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/json":{"schema":{"type":"object"}},"application/vnd.spring-boot.actuator.v2+json":{"schema":{"type":"object"}}}}}}}},"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":["DIRECT_IMPORT","PEAKLISTS","ALIGNED_RUNS","UNALIGNED_RUNS"]},"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}}},"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}}},"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}},"peakDeviationPpm":{"type":"number","description":"Maximum allowed mass deviation in ppm for matching peaks.","format":"double","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},"scoring":{"$ref":"#/components/schemas/SpectralMatchingType"}},"description":"User/developer friendly parameter subset for the Spectral library search tool.","nullable":true},"SpectralMatchingType":{"type":"string","nullable":true,"enum":["INTENSITY","GAUSSIAN","MODIFIED_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"}},"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},"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},"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"]},"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"}}}},"LcmsSubmissionParameters":{"type":"object","properties":{"alignLCMSRuns":{"type":"boolean","description":"Specifies whether LC/MS runs should be aligned","default":true}}},"BasicSpectrum":{"required":["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},"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)","format":"double","nullable":true}},"nullable":true},"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."},"SimplePeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"}}},"CompoundOptField":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations"]},"AlignedFeatureOptField":{"type":"string","nullable":true,"enum":["none","msData","topAnnotations","topAnnotationsDeNovo","computedTools"]},"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"}},"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":["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},"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)","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},"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},"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"}}},"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"]},"DBLink":{"required":["name"],"type":"object","properties":{"name":{"type":"string"},"id":{"type":"string"}},"nullable":true},"Deviation":{"type":"object","properties":{"ppm":{"type":"number","format":"double"},"absolute":{"type":"number","format":"double"}},"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":{"$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":{"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 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},"SpectralLibraryMatch":{"required":["inchiKey","querySpectrumIndex","similarity","uuid"],"type":"object","properties":{"specMatchId":{"type":"string"},"rank":{"type":"integer","format":"int32"},"similarity":{"type":"number","format":"double"},"sharedPeaks":{"type":"integer","format":"int32"},"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":"string"},"smiles":{"type":"string"},"inchiKey":{"type":"string"},"referenceSpectrum":{"$ref":"#/components/schemas/BasicSpectrum"}},"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},"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},"xlogP":{"type":"number","format":"double","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"}}},"nullable":true},"StructureCandidateScored":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"xlogP":{"type":"number","format":"double","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"}},"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"}}},"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."},"PageMetadata":{"type":"object","properties":{"size":{"type":"integer","format":"int64"},"number":{"type":"integer","format":"int64"},"totalElements":{"type":"integer","format":"int64"},"totalPages":{"type":"integer","format":"int64"}}},"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"},"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."},"PagedModelCompound":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"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"}}},"QuantificationMeasure":{"type":"string","enum":["APEX_HEIGHT"]},"QuantificationColumnType":{"type":"string","enum":["SAMPLES"]},"QuantificationRowType":{"type":"string","enum":["FEATURES"]},"QuantificationTableExperimental":{"type":"object","properties":{"quantificationType":{"$ref":"#/components/schemas/QuantificationMeasure"},"rowType":{"$ref":"#/components/schemas/QuantificationRowType"},"columnType":{"$ref":"#/components/schemas/QuantificationColumnType"},"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."},"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"]},"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"}}},"StructureCandidateFormula":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"xlogP":{"type":"number","format":"double","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"}},"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"}}},"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}}}} \ No newline at end of file +{"openapi":"3.1.0","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","default":["none"],"items":{"$ref":"#/components/schemas/ProjectInfoOptField"}}}],"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","default":["none"],"items":{"$ref":"#/components/schemas/ProjectInfoOptField"}}}],"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","default":["none"],"items":{"$ref":"#/components/schemas/ProjectInfoOptField"}}}],"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","default":["progress"],"items":{"$ref":"#/components/schemas/JobOptField"}}}],"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","default":"AVG"}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure","default":"APEX_INTENSITY"}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","default":["progress"],"items":{"$ref":"#/components/schemas/JobOptField"}}}],"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","default":["none"],"items":{"$ref":"#/components/schemas/StructureCandidateOptField"}}}],"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","default":"AVG"}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure","default":"APEX_INTENSITY"}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","default":["progress"],"items":{"$ref":"#/components/schemas/JobOptField"}}}],"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":{"type":"string","pattern":"^[a-zA-Z0-9-_]+$"}}],"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","default":["none"],"items":{"$ref":"#/components/schemas/JobOptField"}}}],"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","default":["command","progress"],"items":{"$ref":"#/components/schemas/JobOptField"}}}],"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","default":["command","progress"],"items":{"$ref":"#/components/schemas/JobOptField"}}}],"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":{"type":"object","properties":{"inputFiles":{"type":"array","description":"files to import into project","items":{"type":"string","format":"binary"}}},"required":["inputFiles"]}}}},"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","default":["progress"],"items":{"$ref":"#/components/schemas/JobOptField"}}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"inputFiles":{"type":"array","items":{"type":"string","format":"binary"}}},"required":["inputFiles"]}}}},"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":{"type":"object","properties":{"inputFiles":{"type":"array","description":"Files to import into project.","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters","description":"Parameters for feature alignment and feature finding."}},"required":["inputFiles","parameters"]}}}},"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","default":["progress"],"items":{"$ref":"#/components/schemas/JobOptField"}}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"inputFiles":{"type":"array","description":"Files to import into project.","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters","description":"Parameters for feature alignment and feature finding."}},"required":["inputFiles","parameters"]}}}},"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 [EXPERIMENTAL] 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","default":["none"],"items":{"$ref":"#/components/schemas/CompoundOptField"}}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","default":["none"],"items":{"$ref":"#/components/schemas/AlignedFeatureOptField"}}}],"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","default":["none"],"items":{"$ref":"#/components/schemas/CompoundOptField"}}},{"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","default":["none"],"items":{"$ref":"#/components/schemas/AlignedFeatureOptField"}}}],"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","default":["none"],"items":{"$ref":"#/components/schemas/AlignedFeatureOptField"}}}],"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","default":["none"],"items":{"$ref":"#/components/schemas/AlignedFeatureOptField"}}}],"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":{"type":"object","properties":{"inputFiles":{"type":"array","description":"files to be imported","items":{"type":"string","format":"binary"}},"bioTransformerParameters":{"$ref":"#/components/schemas/BioTransformerParameters","description":"configuration for biotransformer execution. If null, BioTransformer is not applied."}},"required":["inputFiles"]}}}},"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":{}}}},"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","default":[],"items":{"$ref":"#/components/schemas/RunOptField"}}}],"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
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.
A clause may be:
\ntags.MyTagA:sampletags.MyTagA:"Some Text"tags.MyTagA:/[mb]oat/tags.MyTagB<3[ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3] Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )
The syntax allows to build complex filter queries such as:
\n\ntags.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 [EXPERIMENTAL] 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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":[],"items":{"$ref":"#/components/schemas/RunOptField"}}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"$ref":"#/components/schemas/RunOptField"}}}],"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","default":["progress"],"items":{"$ref":"#/components/schemas/JobOptField"}}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"$ref":"#/components/schemas/JobOptField"}}}],"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","default":["none"],"items":{"$ref":"#/components/schemas/CompoundOptField"}}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","default":["none"],"items":{"$ref":"#/components/schemas/AlignedFeatureOptField"}}}],"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","default":"APEX_HEIGHT"}}],"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
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.
A clause may be:
\ntags.MyTagA:sampletags.MyTagA:"Some Text"tags.MyTagA:/[mb]oat/tags.MyTagB<3[ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3] Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )
The syntax allows to build complex filter queries such as:
\n\ntags.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 [EXPERIMENTAL] 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","default":"AVG"}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure","default":"APEX_INTENSITY"}}],"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","default":"APEX_HEIGHT"}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"$ref":"#/components/schemas/CompoundOptField"}}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","default":["none"],"items":{"$ref":"#/components/schemas/AlignedFeatureOptField"}}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"$ref":"#/components/schemas/CompoundOptField"}}}],"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","default":["none"],"items":{"$ref":"#/components/schemas/AlignedFeatureOptField"}}}],"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","default":["none"],"items":{"$ref":"#/components/schemas/SpectralLibraryMatchOptField"}}}],"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","default":["none"],"items":{"$ref":"#/components/schemas/SpectralLibraryMatchOptField"}}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"$ref":"#/components/schemas/SpectralLibraryMatchOptField"}}}],"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","default":"APEX_HEIGHT"}}],"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","default":["none"],"items":{"$ref":"#/components/schemas/FormulaCandidateOptField"}}}],"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","default":["none"],"items":{"$ref":"#/components/schemas/FormulaCandidateOptField"}}}],"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","default":["none"],"items":{"$ref":"#/components/schemas/StructureCandidateOptField"}}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"$ref":"#/components/schemas/StructureCandidateOptField"}}}],"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","default":["none"],"items":{"$ref":"#/components/schemas/StructureCandidateOptField"}}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"$ref":"#/components/schemas/StructureCandidateOptField"}}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"$ref":"#/components/schemas/FormulaCandidateOptField"}}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"$ref":"#/components/schemas/StructureCandidateOptField"}}}],"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","default":["none"],"items":{"$ref":"#/components/schemas/StructureCandidateOptField"}}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"$ref":"#/components/schemas/StructureCandidateOptField"}}}],"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
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.
A clause may be:
\ntags.MyTagA:sampletags.MyTagA:"Some Text"tags.MyTagA:/[mb]oat/tags.MyTagB<3[ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3] Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )
The syntax allows to build complex filter queries such as:
\n\ntags.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 [EXPERIMENTAL] 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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":[],"items":{"$ref":"#/components/schemas/AlignedFeatureOptField"}}}],"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","default":"AVG"}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure","default":"APEX_INTENSITY"}}],"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","default":"APEX_HEIGHT"}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"$ref":"#/components/schemas/AlignedFeatureOptField"}}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"$ref":"#/components/schemas/AlignedFeatureOptField"}}}],"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","default":"AVG"}},{"name":"quantification","in":"query","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure","default":"APEX_INTENSITY"}}],"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","default":"AVG"}},{"name":"quantification","in":"query","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure","default":"APEX_INTENSITY"}}],"responses":{"200":{"description":"OK"}}}}},"components":{"schemas":{"ProjectChangeEvent":{"properties":{"eventType":{"$ref":"#/components/schemas/ProjectEventType"},"projectId":{"type":"string"},"compoundId":{"type":"string"},"featuredId":{"type":"string"},"formulaId":{"type":"string"},"structureInChIKey":{"type":"string"}}},"DataImportEvent":{"properties":{"importJobId":{"type":"string"},"importedCompoundIds":{"type":"array","items":{"type":"string"}},"importedFeatureIds":{"type":"array","items":{"type":"string"}}},"required":["importedCompoundIds","importedFeatureIds"]},"BackgroundComputationsStateEvent":{"properties":{"affectedJobs":{"type":"array","items":{"$ref":"#/components/schemas/Job"}},"numberOfJobs":{"type":"integer","format":"int32"},"numberOfRunningJobs":{"type":"integer","format":"int32"},"numberOfFinishedJobs":{"type":"integer","format":"int32"}},"required":["affectedJobs","numberOfFinishedJobs","numberOfJobs","numberOfRunningJobs"]},"ProjectEventType":{"enum":["PROJECT_OPENED","PROJECT_MOVED","PROJECT_CLOSED","FEATURE_CREATED","FEATURE_UPDATED","FEATURE_DELETED","RESULT_CREATED","RESULT_UPDATED","RESULT_DELETED"]},"ProjectInfoOptField":{"type":"string","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."},"type":{"$ref":"#/components/schemas/ProjectType","description":"Type of this project.\n NULL if project type has not yet been specified by importing data."},"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."},"numOfFeatures":{"type":"integer","format":"int32","description":"Number of features (aligned over runs) in this project. If NULL, information has not been requested (See OptField 'sizeInformation')."},"numOfCompounds":{"type":"integer","format":"int32","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."},"numOfBytes":{"type":"integer","format":"int64","description":"Size in Bytes this project consumes on disk If NULL, Information has not been requested (See OptField 'sizeInformation')."}}},"ProjectType":{"type":"string","enum":["UNIMPORTED","DIRECT_IMPORT","PEAKLISTS","ALIGNED_RUNS","UNALIGNED_RUNS"]},"TagDefinitionImport":{"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."},"tagType":{"type":"string","description":"A simple string based identifier to specify the type/scope/purpose of this tag."},"valueType":{"$ref":"#/components/schemas/ValueType"},"possibleValues":{"type":"array","items":{}},"minValue":{},"maxValue":{}},"required":["tagName","valueType"]},"ValueType":{"type":"string","enum":["NONE","BOOLEAN","INTEGER","REAL","TEXT","DATE","TIME"]},"TagDefinition":{"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."},"tagType":{"type":"string","description":"A simple string based identifier to specify the type/scope/purpose of this tag."},"valueType":{"$ref":"#/components/schemas/ValueType"},"possibleValues":{"type":"array","items":{}},"minValue":{},"maxValue":{},"editable":{"type":"boolean"}},"required":["tagName","valueType"]},"Tag":{"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":{"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)."}},"required":["tagName"]},"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","enum":["none","command","progress","affectedIds"]},"Job":{"type":"object","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.","properties":{"id":{"type":"string","description":"Unique identifier to access the job via the API"},"command":{"type":"string","description":"Command string of the executed Task"},"progress":{"$ref":"#/components/schemas/JobProgress","description":"Optional progress information of this job"},"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","items":{"type":"string"}},"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","items":{"type":"string"}},"jobEffect":{"$ref":"#/components/schemas/JobEffect","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"}}},"JobEffect":{"type":"string","enum":["IMPORT","COMPUTATION","DELETION"]},"JobProgress":{"type":"object","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.","properties":{"indeterminate":{"type":"boolean","description":"Is the progress indeterminate or not"},"state":{"$ref":"#/components/schemas/JobState","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."},"currentProgress":{"type":"integer","format":"int64","description":"Current progress value of the job."},"maxProgress":{"type":"integer","format":"int64","description":"Progress value to reach (might also change during execution)"},"message":{"type":"string","description":"Progress information and warnings."},"errorMessage":{"type":"string","description":"Error message if the job did not finish successfully failed."}}},"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":{"type":"object","properties":{"name":{"type":"string","description":"Optional Displayable name of this spectrum."},"msLevel":{"type":"integer","format":"int32","description":"MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero"},"collisionEnergy":{"type":"string","description":"Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable"},"instrument":{"type":"string","description":"Instrument information."},"precursorMz":{"type":"number","format":"double","description":"Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable"},"scanNumber":{"type":"integer","format":"int32","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)"},"cosineQuery":{"type":"boolean","default":false,"description":"True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra."},"precursorPeak":{"$ref":"#/components/schemas/SimplePeak","description":"A separate precursor peak field to either mark the precursor in the peaklist or\n provide the precursor peak separately from the spectrum in case the spectrum is in a preprocessed form where\n the precursor peak has been removed for library matching.\n\n NULL if the spectrum does not contain the precursor peak."},"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","format":"double","deprecated":true,"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."},"maxNormFactor":{"type":"number","format":"double","description":"Factor to convert absolute intensities to MAX norm."},"sumNormFactor":{"type":"number","format":"double","description":"Factor to convert absolute intensities to SUM norm."},"l2NormFactor":{"type":"number","format":"double","description":"Factor to convert absolute intensities to L2 (Euclidean) norm."},"firstPeakNormFactor":{"type":"number","format":"double","description":"Factor to convert absolute intensities to normalize intensities by first peak intensity."}},"required":["cosineQuery","peaks"]},"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","format":"int32","description":"Size of the fingerprint (masked fp), e.g. to reconstruct the binary array from the array of set bits"}}},"DBLink":{"type":"object","properties":{"name":{"type":"string"},"id":{"type":"string"}},"required":["name"]},"PeakPair":{"type":"object","properties":{"queryPeak":{"type":"integer","format":"int32"},"referencePeak":{"type":"integer","format":"int32"}},"required":["queryPeak","referencePeak"]},"SimplePeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"}}},"SpectralLibraryMatch":{"type":"object","properties":{"specMatchId":{"type":"string"},"rank":{"type":"integer","format":"int32"},"similarity":{"type":"number","format":"float","description":"Similarity between query and reference spectrum"},"sharedPeaks":{"type":"integer","format":"int32","description":"Number of shared/matched peaks"},"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","default":"IDENTITY"},"inchiKey":{"type":"string"},"referenceSpectrumType":{"$ref":"#/components/schemas/SpectrumType","default":"SPECTRUM"},"referenceSpectrum":{"$ref":"#/components/schemas/BasicSpectrum"},"querySpectrumType":{"$ref":"#/components/schemas/SpectrumType"}},"required":["inchiKey","querySpectrumIndex","similarity","uuid"]},"SpectralMatchType":{"type":"string","enum":["IDENTITY","ANALOG"]},"SpectrumType":{"type":"string","enum":["SPECTRUM","MERGED_SPECTRUM"]},"StructureCandidateFormula":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string"},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter"},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","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","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double"},"rank":{"type":"integer","format":"int32","description":"the overall rank of this candidate among all candidates of this feature"},"csiScore":{"type":"number","format":"double","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"},"tanimotoSimilarity":{"type":"number","format":"double","description":"Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID"},"mcesDistToTopHit":{"type":"number","format":"double","description":"Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list."},"fingerprint":{"$ref":"#/components/schemas/BinaryFingerprint","description":"Array containing the indices of the molecular fingerprint that are available in the structure (1 if present)\n OPTIONAL: needs to be added by parameter"},"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"},"location":{"type":"string","description":"Storage location of user database\n Might be NULL for non-user databases or if default location is used."},"matchRtOfReferenceSpectra":{"type":"boolean","default":false,"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"}}},"SearchableDatabase":{"type":"object","properties":{"displayName":{"type":"string","description":"display name of the database\n Should be short"},"location":{"type":"string","description":"Storage location of user database\n Might be NULL for non-user databases or if default location is used."},"matchRtOfReferenceSpectra":{"type":"boolean","default":false,"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"},"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."},"dbVersion":{"type":"integer","format":"int32","description":"database schema version"},"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","format":"int64","description":"Number of unique compounds available in this database."},"numberOfFormulas":{"type":"integer","format":"int64","description":"Number of different molecular formulas available in this database."},"numberOfReferenceSpectra":{"type":"integer","format":"int64","description":"Number of reference spectra available in this database"},"errorMessage":{"type":"string","description":"Error message if the database could not be loaded"}},"required":["customDb","databaseId","searchable","updateNeeded"]},"AccountInfo":{"type":"object","properties":{"userID":{"type":"string"},"username":{"type":"string"},"userEmail":{"type":"string"},"gravatarURL":{"type":"string"},"subscriptions":{"type":"array","items":{"$ref":"#/components/schemas/Subscription"}},"activeSubscriptionId":{"type":"string"}}},"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"},"expirationDate":{"type":"string","format":"date-time"},"startDate":{"type":"string","format":"date-time"},"countQueries":{"type":"boolean"},"instanceLimit":{"type":"integer","format":"int32","description":"Limit of instances (features) that can be computed with this subscription"},"instanceHashRecordingTime":{"type":"integer","format":"int32","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"},"maxQueriesPerInstance":{"type":"integer","format":"int32","description":"Maximum number of queries (e.g. prediction) that can be performed\n for one instance before it is counted another time."},"maxUserAccounts":{"type":"integer","format":"int32"},"serviceUrl":{"type":"string"},"description":{"type":"string"},"name":{"type":"string"},"tos":{"type":"string"},"pp":{"type":"string"},"allowedFeatures":{"$ref":"#/components/schemas/AllowedFeatures"}}},"Canopus":{"type":"object","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","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"}}},"ConfidenceMode":{"type":"string","enum":["OFF","EXACT","APPROXIMATE"]},"FingerprintPrediction":{"type":"object","description":"User/developer friendly parameter subset for the CSI:FingerID Fingerprint tool\n Needs results from Formula/SIRIUS Tool","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."},"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."}}},"InstrumentProfile":{"type":"string","description":"Select the profile that is the closest to your instrumental setup. If nothing fits, use QTOF.","enum":["QTOF","ORBITRAP"]},"IsotopeMs2Strategy":{"type":"string","enum":["IGNORE","FILTER","SCORE"]},"JobSubmission":{"type":"object","description":"Object to submit a job to be executed by SIRIUS","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.","items":{"type":"string"}},"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.","items":{"type":"string"}},"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]-","items":{"type":"string"}},"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]-","items":{"type":"string"}},"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]-","items":{"type":"string"}},"recompute":{"type":"boolean","description":"Indicate if already existing result for a tool to be executed should be overwritten or not."},"spectraSearchParams":{"$ref":"#/components/schemas/SpectralLibrarySearch","description":"Parameter Object for spectral library search tool (CLI-Tool: spectra-search).\n Library search results can be used to enhance formula search results\n If NULL the tool will not be executed."},"formulaIdParams":{"$ref":"#/components/schemas/Sirius","description":"Parameter Object for molecular formula identification tool (CLI-Tool: formula, sirius).\n If NULL the tool will not be executed."},"zodiacParams":{"$ref":"#/components/schemas/Zodiac","description":"Parameter Object for network based molecular formula re-ranking (CLI-Tool: zodiac).\n If NULL the tool will not be executed."},"fingerprintPredictionParams":{"$ref":"#/components/schemas/FingerprintPrediction","description":"Parameter Object for Fingerprint prediction with CSI:FingerID (CLI-Tool: fingerint).\n If NULL the tool will not be executed."},"canopusParams":{"$ref":"#/components/schemas/Canopus","description":"Parameter Object for CANOPUS compound class prediction tool (CLI-Tool: canopus).\n If NULL the tool will not be executed."},"structureDbSearchParams":{"$ref":"#/components/schemas/StructureDbSearch","description":"Parameter Object for structure database search with CSI:FingerID (CLI-Tool: structure).\n If NULL the tool will not be executed."},"msNovelistParams":{"$ref":"#/components/schemas/MsNovelist","description":"Parameter Object for MsNovelist DeNovo structure generation (CLI-Tool: msnovelist)\n If NULL the tool will not be executed."},"configMap":{"type":"object","additionalProperties":{"type":"string"},"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."}}},"MsNovelist":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"numberOfCandidateToPredict":{"type":"integer","format":"int32","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."}}},"Sirius":{"type":"object","description":"User/developer friendly parameter subset for the Formula/SIRIUS tool\n Can use results from Spectral library search tool.","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"profile":{"$ref":"#/components/schemas/InstrumentProfile","description":"Instrument specific profile for internal algorithms\n Just select what comes closest to the instrument that was used for measuring the data."},"numberOfCandidates":{"type":"integer","format":"int32","description":"Number of formula candidates to keep as result list (Formula Candidates)."},"numberOfCandidatesPerIonization":{"type":"integer","format":"int32","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."},"massAccuracyMS2ppm":{"type":"number","format":"double","description":"Maximum allowed mass deviation. Only molecular formulas within this mass window are considered."},"isotopeMs2Settings":{"$ref":"#/components/schemas/IsotopeMs2Strategy","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"},"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."},"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."},"performBottomUpSearch":{"type":"boolean","description":"If true, molecular formula generation via bottom up search is enabled."},"performDenovoBelowMz":{"type":"number","format":"double","description":"Specifies the m/z below which de novo molecular formula generation is enabled. Set to 0 to disable de novo molecular formula generation."},"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.","items":{"type":"string"}},"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."},"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"},"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)"},"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)","items":{"type":"string"}},"ilpTimeout":{"$ref":"#/components/schemas/Timeout","description":"Timout settings for the ILP solver used for fragmentation tree computation\n secondsPerInstance: Set the maximum number of seconds for computing a single compound. Set to 0 to disable the time constraint.\n secondsPerTree: Set the maximum number of seconds for a single molecular formula check. Set to 0 to disable the time constraint"},"useHeuristic":{"$ref":"#/components/schemas/UseHeuristic","description":"Mass thresholds for heuristic fragmentation tree computation which dramatically speeds up computations.\n useHeuristicAboveMz: For compounds above this threshold fragmentation trees will be computed heuristically for ranking. Tree that will be kept (numberOfCandidates) will be recomputed exactly\n useOnlyHeuristicAboveMz:For compounds above this threshold fragmentation trees will be computed heuristically."},"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"},"minScoreToInjectSpecLibMatch":{"type":"number","format":"double","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."},"minPeaksToInjectSpecLibMatch":{"type":"integer","format":"int32","description":"Matching peaks threshold to inject formula candidates no matter which score they have or which filter is applied."}}},"SpectralLibrarySearch":{"type":"object","description":"User/developer friendly parameter subset for the Spectral library search tool.","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.","items":{"type":"string"}},"precursorDeviationPpm":{"type":"number","format":"double","description":"Maximum allowed mass deviation in ppm for matching the precursor. If not specified, the same value as for the peaks is used."},"minSimilarity":{"type":"number","format":"float","description":"Minimal spectral similarity of a spectral match to be considered a hit."},"minNumOfPeaks":{"type":"integer","format":"int32","description":"Minimal number of matching peaks of a spectral match to be considered a hit."},"enableAnalogueSearch":{"type":"boolean","description":"Enable analogue search in addition to the identity spectral library search"},"minSimilarityAnalogue":{"type":"number","format":"float","description":"Minimal spectral similarity of a spectral match to be considered an analogue hit."},"minNumOfPeaksAnalogue":{"type":"integer","format":"int32","description":"Minimal number of matching peaks of a spectral match to be considered an analogue hit."},"scoring":{"$ref":"#/components/schemas/SpectralMatchingType","deprecated":true,"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."},"peakDeviationPpm":{"type":"number","format":"double","deprecated":true,"description":"NO LONGER SUPPORTED (IGNORED)\n Maximum allowed mass deviation in ppm for matching peaks."}}},"SpectralMatchingType":{"type":"string","enum":["INTENSITY","GAUSSIAN","MODIFIED_COSINE","FAST_COSINE"]},"StructureDbSearch":{"type":"object","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.","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.","items":{"type":"string"}},"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."},"expansiveSearchConfidenceMode":{"$ref":"#/components/schemas/ConfidenceMode","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."}}},"Timeout":{"type":"object","properties":{"numberOfSecondsPerDecomposition":{"type":"integer","format":"int32"},"numberOfSecondsPerInstance":{"type":"integer","format":"int32"}}},"UseHeuristic":{"type":"object","properties":{"useHeuristicAboveMz":{"type":"integer","format":"int32"},"useOnlyHeuristicAboveMz":{"type":"integer","format":"int32"}}},"Zodiac":{"type":"object","description":"User/developer friendly parameter subset for the ZODIAC tool (Network base molecular formula re-ranking).\n Needs results from Formula/SIRIUS Tool","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"consideredCandidatesAt300Mz":{"type":"integer","format":"int32","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."},"consideredCandidatesAt800Mz":{"type":"integer","format":"int32","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."},"runInTwoSteps":{"type":"boolean","description":"As default ZODIAC runs a 2-step approach. First running 'good quality compounds' only, and afterwards including the remaining."},"edgeFilterThresholds":{"$ref":"#/components/schemas/ZodiacEdgeFilterThresholds","description":"thresholdFilter = Defines the proportion of edges of the complete network which will be ignored.\n minLocalConnections = Minimum number of compounds to which at least one candidate per compound must be connected to."},"gibbsSamplerParameters":{"$ref":"#/components/schemas/ZodiacEpochs","description":"iterations: \"Number of epochs to run the Gibbs sampling. When multiple Markov chains are computed, all chains' iterations sum up to this value.\"\n burnInPeriod: \"Number of epochs considered as 'burn-in period'.\n numberOfMarkovChains: Number of separate Gibbs sampling runs."},"librarySearchAnchors":{"$ref":"#/components/schemas/ZodiacLibraryScoring","description":"Configure the use of identity spectral library search results as anchors in ZODIAC network"},"analogueSearchAnchors":{"$ref":"#/components/schemas/ZodiacAnalogueNodes","description":"Configure the use of analogue spectral library search results as anchors in ZODIAC network"}}},"ZodiacAnalogueNodes":{"type":"object","properties":{"enabled":{"type":"boolean"},"minSimilarity":{"type":"number","format":"double"},"minSharedPeaks":{"type":"integer","format":"int32"}}},"ZodiacEdgeFilterThresholds":{"type":"object","properties":{"thresholdFilter":{"type":"number","format":"double"},"minLocalCandidates":{"type":"integer","format":"int32"},"minLocalConnections":{"type":"integer","format":"int32"}}},"ZodiacEpochs":{"type":"object","properties":{"iterations":{"type":"integer","format":"int32"},"burnInPeriod":{"type":"integer","format":"int32"},"numberOfMarkovChains":{"type":"integer","format":"int32"}}},"ZodiacLibraryScoring":{"type":"object","properties":{"enabled":{"type":"boolean"},"minSimilarity":{"type":"number","format":"double"}}},"ImportResult":{"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"}}},"required":["affectedAlignedFeatureIds","affectedCompoundIds"]},"Deviation":{"type":"object","properties":{"ppm":{"type":"number","format":"double"},"absolute":{"type":"number","format":"double"}}},"LcmsSubmissionParameters":{"type":"object","properties":{"alignLCMSRuns":{"type":"boolean","default":true,"description":"Specifies whether LC/MS runs should be aligned"},"noiseIntensity":{"type":"number","format":"double","default":-1,"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."},"traceMaxMassDeviation":{"$ref":"#/components/schemas/Deviation","default":"null","description":"Maximal allowed mass deviation for peaks in ms1 to be considered as belonging to the same trace."},"alignMaxMassDeviation":{"$ref":"#/components/schemas/Deviation","default":"null","description":"Maximal allowed mass deviation for aligning features. If not specified, this parameter is estimated from data."},"alignMaxRetentionTimeDeviation":{"type":"number","format":"double","default":-1,"description":"Maximal allowed retention time error in seconds for aligning features. If not specified, this parameter is estimated from data."},"minSNR":{"type":"number","format":"double","default":3,"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"}}},"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":{"type":"object","properties":{"name":{"type":"string","description":"Some (optional) human-readable name"},"features":{"type":"array","description":"The features this compound consists of.","items":{"$ref":"#/components/schemas/FeatureImport"}}},"required":["features"]},"DataQuality":{"type":"string","enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"FeatureImport":{"type":"object","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.","properties":{"name":{"type":"string"},"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."},"ionMass":{"type":"number","format":"double"},"charge":{"type":"integer","format":"int32"},"detectedAdducts":{"type":"array","description":"Detected adducts of this feature. Can be NULL or empty if no adducts are known.","items":{"type":"string"},"uniqueItems":true},"rtStartSeconds":{"type":"number","format":"double"},"rtEndSeconds":{"type":"number","format":"double"},"rtApexSeconds":{"type":"number","format":"double"},"dataQuality":{"$ref":"#/components/schemas/DataQuality","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."},"mergedMs1":{"$ref":"#/components/schemas/BasicSpectrum","description":"Merged/Representative MS1 spectrum of this feature that contains the isotope pattern of the precursor ion.\n Note: 'ms1Spectra' will be ignored if given."},"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.","items":{"$ref":"#/components/schemas/BasicSpectrum"}},"ms2Spectra":{"type":"array","description":"List of MS/MS spectra that belong to this feature.","items":{"$ref":"#/components/schemas/BasicSpectrum"}}},"required":["charge","ionMass"]},"CompoundOptField":{"type":"string","enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"AlignedFeatureOptField":{"type":"string","enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"AlignedFeature":{"type":"object","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.","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","format":"int32","description":"Ion mode (charge) this feature has been measured in."},"detectedAdducts":{"type":"array","description":"Adducts of this feature that have been detected during preprocessing.","items":{"type":"string"},"uniqueItems":true},"rtStartSeconds":{"type":"number","format":"double"},"rtEndSeconds":{"type":"number","format":"double"},"rtApexSeconds":{"type":"number","format":"double"},"quality":{"$ref":"#/components/schemas/DataQuality","description":"Quality of this feature."},"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","description":"Mass Spec data of this feature (input data)"},"topAnnotations":{"$ref":"#/components/schemas/FeatureAnnotations","description":"Top annotations of this feature.\n If a CSI:FingerID structureAnnotation is available, the FormulaCandidate that corresponds to the\n structureAnnotation is returned. Otherwise, it's the FormulaCandidate with the highest SiriusScore is returned.\n CANOPUS Compound classes correspond to the FormulaCandidate no matter how it was selected\n\n Null if it was not requested und non-null otherwise."},"topAnnotationsDeNovo":{"$ref":"#/components/schemas/FeatureAnnotations","description":"Top de novo annotations of this feature.\n The FormulaCandidate with the highest SiriusScore is returned. MSNovelist structureAnnotation and\n CANOPUS compoundClasses correspond to the FormulaCandidate.\n\n Null if it was not requested und non-null otherwise."},"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","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."},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag"}},"required":["charge","detectedAdducts"]},"AnnotatedPeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"},"peakAnnotation":{"$ref":"#/components/schemas/PeakAnnotation"}}},"AnnotatedSpectrum":{"type":"object","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","properties":{"name":{"type":"string","description":"Optional Displayable name of this spectrum."},"msLevel":{"type":"integer","format":"int32","description":"MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero"},"collisionEnergy":{"type":"string","description":"Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable"},"instrument":{"type":"string","description":"Instrument information."},"precursorMz":{"type":"number","format":"double","description":"Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable"},"scanNumber":{"type":"integer","format":"int32","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)"},"cosineQuery":{"type":"boolean","default":false,"description":"True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra."},"precursorPeak":{"$ref":"#/components/schemas/SimplePeak","description":"A separate precursor peak field to either mark the precursor in the peaklist or\n provide the precursor peak separately from the spectrum in case the spectrum is in a preprocessed form where\n the precursor peak has been removed for library matching.\n\n NULL if the spectrum does not contain the precursor peak."},"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","format":"double","deprecated":true,"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."},"maxNormFactor":{"type":"number","format":"double","description":"Factor to convert absolute intensities to MAX norm."},"sumNormFactor":{"type":"number","format":"double","description":"Factor to convert absolute intensities to SUM norm."},"l2NormFactor":{"type":"number","format":"double","description":"Factor to convert absolute intensities to L2 (Euclidean) norm."},"firstPeakNormFactor":{"type":"number","format":"double","description":"Factor to convert absolute intensities to normalize intensities by first peak intensity."},"spectrumAnnotation":{"$ref":"#/components/schemas/SpectrumAnnotation","description":"Optional Annotations of this spectrum."}},"required":["cosineQuery","peaks"]},"CanopusPrediction":{"type":"object","description":"Container class that holds the CANOPUS compound class predictions for alle predictable compound classes.\n This is the full CANOPUS result.","properties":{"classyFireClasses":{"type":"array","description":"All predicted ClassyFire classes","items":{"$ref":"#/components/schemas/CompoundClass"}},"npcClasses":{"type":"array","description":"All predicted NPC classes","items":{"$ref":"#/components/schemas/CompoundClass"}}}},"Compound":{"type":"object","properties":{"compoundId":{"type":"string","description":"uid of this compound Entity"},"name":{"type":"string","description":"Some (optional) human-readable name"},"rtStartSeconds":{"type":"number","format":"double","description":"The merged/consensus retention time start (earliest rt) of this compound"},"rtEndSeconds":{"type":"number","format":"double","description":"The merged/consensus retention time end (latest rt) of this compound"},"neutralMass":{"type":"number","format":"double","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"},"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","description":"The consensus of the top annotations from all the features of this compound.\n Null if it was not requested und non-null otherwise. Might contain empty fields if results are not available"},"consensusAnnotationsDeNovo":{"$ref":"#/components/schemas/ConsensusAnnotationsDeNovo","description":"The consensus of the top de novo annotations from all the features of this compound.\n Null if it was not requested und non-null otherwise. Might contain empty fields if results are not available"},"customAnnotations":{"$ref":"#/components/schemas/ConsensusAnnotationsCSI","description":"Alternative annotations selected by the User."},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag"}}},"CompoundClass":{"type":"object","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","properties":{"type":{"$ref":"#/components/schemas/CompoundClassType","description":"Specifies the classification ontology the CompoundClass belongs to."},"level":{"type":"string","description":"Name of the level this compound class belongs to"},"levelIndex":{"type":"integer","format":"int32","description":"Index of the level this compound class belongs to"},"name":{"type":"string","description":"Name of the compound class."},"description":{"type":"string","description":"Description of the compound class."},"id":{"type":"integer","format":"int32","description":"Unique id of the class. Might be undefined for certain classification ontologies."},"probability":{"type":"number","format":"double","description":"prediction probability"},"index":{"type":"integer","format":"int32","description":"Absolute index of this property in the predicted vector/embedding"},"parentId":{"type":"integer","format":"int32","description":"Unique id of the parent class. Might be undefined for certain classification ontologies."},"parentName":{"type":"string","description":"Name of the parent compound class."}}},"CompoundClassType":{"type":"string","description":"Defines compound class ontologies that are available.","enum":["ClassyFire","NPC"]},"CompoundClasses":{"type":"object","description":"Container class that holds the most likely compound class for different levels of each ontology for a\n certain Compound/Feature/FormulaCandidate/PredictedFingerprint.","properties":{"npcPathway":{"$ref":"#/components/schemas/CompoundClass","description":"Pathway level NPC class with the highest probability"},"npcSuperclass":{"$ref":"#/components/schemas/CompoundClass","description":"Superclass level NPC class with the highest probability"},"npcClass":{"$ref":"#/components/schemas/CompoundClass","description":"Class level NPC class with the highest probability"},"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","items":{"$ref":"#/components/schemas/CompoundClass"}},"classyFireAlternatives":{"type":"array","description":"Alternative ClassyFire classes with high probability that do not fit into the linage","items":{"$ref":"#/components/schemas/CompoundClass"}}}},"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"}}},"ConsensusAnnotationsCSI":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula of the consensus annotation\n Might be null if no consensus formula is available."},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses","description":"Compound classes (predicted with CANOPUS) corresponding to the molecularFormula\n Might be null if no fingerprints or compound classes are available."},"supportingFeatureIds":{"type":"array","description":"FeatureIds where the topAnnotation supports this annotation.","items":{"type":"string"}},"selectionCriterion":{"$ref":"#/components/schemas/ConsensusCriterionCSI","description":"Null if this is a custom selection"},"csiFingerIdStructure":{"$ref":"#/components/schemas/StructureCandidate","description":"Database structure candidate (searched with CSI:FingerID), that also defines the molecularFormula\n Might be null if no consensus structure is available."},"confidenceExactMatch":{"type":"number","format":"double","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"},"confidenceApproxMatch":{"type":"number","format":"double","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"}}},"ConsensusAnnotationsDeNovo":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula of the consensus annotation\n Might be null if no consensus formula is available."},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses","description":"Compound classes (predicted with CANOPUS) corresponding to the molecularFormula\n Might be null if no fingerprints or compound classes are available."},"supportingFeatureIds":{"type":"array","description":"FeatureIds where the topAnnotation supports this annotation.","items":{"type":"string"}},"selectionCriterion":{"$ref":"#/components/schemas/ConsensusCriterionDeNovo","description":"Criterion that was used to select the consensus annotation."}}},"ConsensusCriterionCSI":{"type":"string","enum":["MAJORITY_STRUCTURE","CONFIDENCE_STRUCTURE","SINGLETON_STRUCTURE","MAJORITY_FORMULA","TOP_FORMULA","SINGLETON_FORMULA"]},"ConsensusCriterionDeNovo":{"type":"string","enum":["MAJORITY_FORMULA","TOP_FORMULA","SINGLETON_FORMULA"]},"FeatureAnnotations":{"type":"object","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.","properties":{"formulaAnnotation":{"$ref":"#/components/schemas/FormulaCandidate","description":"Best matching FormulaCandidate."},"structureAnnotation":{"$ref":"#/components/schemas/StructureCandidateScored","description":"Best matching StructureCandidate ranked by CSI:FingerID Score over all FormulaCandidates."},"compoundClassAnnotation":{"$ref":"#/components/schemas/CompoundClasses","description":"Best matching compound classes that correspond to the formulaAnnotation"},"confidenceExactMatch":{"type":"number","format":"double","description":"Confidence Score that represents the confidence whether the top hit is correct."},"confidenceApproxMatch":{"type":"number","format":"double","description":"Confidence Score that represents the confidence whether the top hit or a very similar hit (estimated by MCES distance) is correct."},"expansiveSearchState":{"$ref":"#/components/schemas/ConfidenceMode","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)"},"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.","items":{"type":"string"}},"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.","items":{"type":"string"}}}},"FormulaCandidate":{"type":"object","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.","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","format":"double","description":"Normalized Sirius Score of the formula candidate.\n If NULL result is not available"},"siriusScore":{"type":"number","format":"double","description":"Sirius Score (isotope + tree score) of the formula candidate.\n If NULL result is not available"},"isotopeScore":{"type":"number","format":"double"},"treeScore":{"type":"number","format":"double"},"zodiacScore":{"type":"number","format":"double","description":"Zodiac Score of the formula candidate.\n If NULL result is not available"},"numOfExplainedPeaks":{"type":"integer","format":"int32"},"numOfExplainablePeaks":{"type":"integer","format":"int32"},"totalExplainedIntensity":{"type":"number","format":"double"},"medianMassDeviation":{"$ref":"#/components/schemas/Deviation"},"fragmentationTree":{"$ref":"#/components/schemas/FragmentationTree","description":"The fragmentation tree that belongs to this molecular formula candidate (produces the treeScore)."},"annotatedSpectrum":{"$ref":"#/components/schemas/AnnotatedSpectrum","description":"Fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses"},"isotopePatternAnnotation":{"$ref":"#/components/schemas/IsotopePatternAnnotation","description":"The measured and simulated isotope pattern that have been compared against each other to produce the isotopeScore."},"lipidAnnotation":{"$ref":"#/components/schemas/LipidAnnotation","description":"ElGordo lipid annotation of this candidate.\n NULL if annotation was not requested. lipidAnnotation.lipidSpecies == NULL if candidate has not been classified as a lipid"},"predictedFingerprint":{"type":"array","description":"Probabilistic molecular fingerprint predicted by CSI:FingerID","items":{"type":"number","format":"double"}},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses","description":"Most likely compound classes for different levels of each ontology for this FormulaCandidate (predictedFingerprint)"},"canopusPrediction":{"$ref":"#/components/schemas/CanopusPrediction","description":"All classes predicted by canopus for this FormulaCandidate (predictedFingerprint)"}}},"FragmentNode":{"type":"object","properties":{"fragmentId":{"type":"integer","format":"int32"},"molecularFormula":{"type":"string","description":"neutral molecular formula of the fragment without adduct"},"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."},"massDeviationDa":{"type":"number","format":"double"},"massDeviationPpm":{"type":"number","format":"double"},"score":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"},"mz":{"type":"number","format":"double"}}},"FragmentationTree":{"type":"object","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","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"}}},"IsotopePatternAnnotation":{"type":"object","properties":{"isotopePattern":{"$ref":"#/components/schemas/BasicSpectrum"},"simulatedPattern":{"$ref":"#/components/schemas/BasicSpectrum"}}},"LipidAnnotation":{"type":"object","properties":{"lipidSpecies":{"type":"string","description":"Predicted lipid species in LIPID MAPS notation.\n NULL if not classified as lipid."},"lipidMapsId":{"type":"string","description":"LIPID MAPS id of the predicted lipid class."},"lipidClassName":{"type":"string","description":"Human-readable name of the predicted lipid class."},"hypotheticalStructure":{"type":"string","description":"Hypothetical molecular structure of the predicted lipid species as SMILES.\n NULL if hypothetical structure not available."},"chainsUnknown":{"type":"boolean","description":"True of the formula composition of the chains could not be determined from the MS/MS."}}},"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","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","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"}}}},"ParentPeak":{"type":"object","description":"Link from annotated fragment peak to its parent fragment peak connected by their neutral loss.","properties":{"parentIdx":{"type":"integer","format":"int32","description":"Index to the parent peak connected by this loss in this particular spectrum"},"parentFragmentId":{"type":"integer","format":"int32","description":"Identifier of the parent fragment connected via this loss. Can be used to map fragments and peaks\n among fragmentation trees and spectra."},"lossFormula":{"type":"string","description":"Molecular formula of the neutral loss that connects these two peaks."}},"required":["lossFormula","parentFragmentId","parentIdx"]},"PeakAnnotation":{"type":"object","properties":{"fragmentId":{"type":"integer","format":"int32","description":"Identifier of the peak/fragment. Can be used to map fragments and peaks\n among fragmentation trees and spectra."},"molecularFormula":{"type":"string","description":"Molecular formula that has been annotated to this peak"},"adduct":{"type":"string","description":"Adduct that has been annotated to this peak"},"exactMass":{"type":"number","format":"double","description":"Exact mass of the annotated molecular formula and adduct"},"massDeviationMz":{"type":"number","format":"double","description":"Absolute mass deviation of the exact mass to the measured peak mass in mDa"},"massDeviationPpm":{"type":"number","format":"double","description":"Relative mass deviation of the exact mass to the measured peak mass in ppm"},"recalibratedMassDeviationMz":{"type":"number","format":"double","description":"Absolute mass deviation of the exact mass to the recalibrated peak mass in mDa"},"recalibratedMassDeviationPpm":{"type":"number","format":"double","description":"Relative mass deviation of the exact mass to the recalibrated peak mass in ppm"},"parentPeak":{"$ref":"#/components/schemas/ParentPeak","description":"Link to the parent peak connected via the neutral loss from the fragmentation tree."},"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)","items":{"type":"integer","format":"int32"}},"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.","items":{"type":"integer","format":"int32"}},"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.","items":{"type":"integer","format":"int32"}},"substructureScore":{"type":"number","format":"float","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."},"hydrogenRearrangements":{"type":"integer","format":"int32","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."}},"required":["fragmentId"]},"SpectrumAnnotation":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula that has been annotated to this spectrum"},"adduct":{"type":"string","description":"Adduct that has been annotated to this spectrum"},"exactMass":{"type":"number","format":"double","description":"Exact mass based on the annotated molecular formula and ionization"},"massDeviationMz":{"type":"number","format":"double","description":"Absolute mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in mDa"},"massDeviationPpm":{"type":"number","format":"double","description":"Relative mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in ppm"},"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."},"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."},"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."},"structureAnnotationScore":{"type":"number","format":"double","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."}}},"StructureCandidate":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string"},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter"},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","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","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double"}}},"StructureCandidateScored":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string"},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter"},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","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","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double"},"rank":{"type":"integer","format":"int32","description":"the overall rank of this candidate among all candidates of this feature"},"csiScore":{"type":"number","format":"double","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"},"tanimotoSimilarity":{"type":"number","format":"double","description":"Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID"},"mcesDistToTopHit":{"type":"number","format":"double","description":"Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list."},"fingerprint":{"$ref":"#/components/schemas/BinaryFingerprint","description":"Array containing the indices of the molecular fingerprint that are available in the structure (1 if present)\n OPTIONAL: needs to be added by parameter"}}},"StoredJobSubmission":{"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","description":"The JobSubmission identified by the name"}},"required":["editable","jobSubmission","name"]},"BioTransformerParameters":{"type":"object","properties":{"cyp450Mode":{"$ref":"#/components/schemas/Cyp450Mode","default":"COMBINED","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."},"p2Mode":{"$ref":"#/components/schemas/P2Mode","default":"BT_RULE_BASED","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."},"useDB":{"type":"boolean","default":true,"description":"\"Specify if you want to enable the retrieving from database (HMDB) feature.\""},"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"}}},"required":["bioTransformerSequenceSteps","cyp450Mode","p2Mode"]},"BioTransformerSequenceStep":{"type":"object","properties":{"metabolicTransformation":{"$ref":"#/components/schemas/MetabolicTransformation"},"iterations":{"type":"integer","format":"int32"}}},"Cyp450Mode":{"type":"string","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","enum":["BT_RULE_BASED","P2_RULE_ONLY","COMBINED_RULES"]},"AccountCredentials":{"type":"object","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.","properties":{"username":{"type":"string"},"password":{"type":"string"},"refreshToken":{"type":"string"}}},"RunOptField":{"type":"string","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"},"ionization":{"type":"string"},"fragmentation":{"type":"string"},"massAnalyzers":{"type":"array","items":{"type":"string"}},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag"}}},"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","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","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"}}},"AdductNetworkExperimental":{"type":"object","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","properties":{"nodes":{"type":"array","items":{"$ref":"#/components/schemas/AdductNodeExperimental"}},"edges":{"type":"array","items":{"$ref":"#/components/schemas/AdductEdgeExperimental"}}}},"AdductNodeExperimental":{"type":"object","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","properties":{"alignedFeatureId":{"type":"string"},"mz":{"type":"number","format":"double"},"adductAnnotations":{"type":"object","additionalProperties":{"type":"number","format":"double"}}}},"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","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","properties":{"type":{"$ref":"#/components/schemas/TraceAnnotationTypeExperimental"},"description":{"type":"string"},"index":{"type":"integer","format":"int32"},"from":{"type":"integer","format":"int32"},"to":{"type":"integer","format":"int32"}}},"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","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","properties":{"id":{"type":"string"},"sampleId":{"type":"string"},"sampleName":{"type":"string"},"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","format":"double","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."},"noiseLevel":{"type":"number","format":"double","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."}}},"TraceSetExperimental":{"type":"object","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","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"}}}},"QuantRowType":{"type":"string","enum":["FEATURES","COMPOUNDS"]},"QuantTableExperimental":{"type":"object","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","properties":{"quantificationMeasure":{"$ref":"#/components/schemas/QuantMeasure"},"rowType":{"$ref":"#/components/schemas/QuantRowType"},"rowIds":{"type":"array","items":{"type":"integer","format":"int64"}},"columnIds":{"type":"array","items":{"type":"integer","format":"int64"}},"rowNames":{"type":"array","items":{"type":"string"}},"columnNames":{"type":"array","items":{"type":"string"}},"values":{"type":"array","items":{"type":"array","items":{"type":"number","format":"double"}}}}},"PagedModelCompound":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"FoldChange":{"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"}},"required":["foldChange","objectId","quantType"]},"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","enum":["none","referenceSpectrum"]},"SpectralLibraryMatchSummary":{"type":"object","properties":{"bestMatch":{"$ref":"#/components/schemas/SpectralLibraryMatch"},"spectralMatchCount":{"type":"integer","format":"int64"},"referenceSpectraCount":{"type":"integer","format":"int32"},"databaseCompoundCount":{"type":"integer","format":"int32"}},"required":["databaseCompoundCount","referenceSpectraCount","spectralMatchCount"]},"PagedModelSpectralLibraryMatch":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"AlignedFeatureQualityExperimental":{"type":"object","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","properties":{"alignedFeatureId":{"type":"string","description":"Id of the feature (aligned over runs) this quality information belongs to."},"overallQuality":{"$ref":"#/components/schemas/DataQuality","description":"Overall Quality"},"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.,"}},"required":["alignedFeatureId","categories","overallQuality"]},"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","enum":["none","statistics","fragmentationTree","annotatedSpectrum","isotopePattern","lipidAnnotation","predictedFingerprint","compoundClasses","canopusPredictions"]},"AnnotatedMsMsData":{"type":"object","properties":{"mergedMs2":{"$ref":"#/components/schemas/AnnotatedSpectrum"},"ms2Spectra":{"type":"array","items":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}},"required":["mergedMs2","ms2Spectra"]},"StructureCandidateOptField":{"type":"string","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":{"type":"object","properties":{"nightSkyApiVersion":{"type":"string","description":"API version of the SIRIUS Nightsky API"},"siriusVersion":{"type":"string","description":"Version of the SIRIUS application"},"latestSiriusVersion":{"type":"string","description":"Latest available Version of the SIRIUS application"},"latestSiriusLink":{"type":"string","description":"Link to the latest available Version of the SIRIUS application"},"updateAvailable":{"type":"boolean","description":"true if newer SIRIUS version is available"},"siriusLibVersion":{"type":"string","description":"Version of the SIRIUS libraries"},"fingerIdLibVersion":{"type":"string","description":"Version of the CSI:FingerID libraries"},"chemDbVersion":{"type":"string","description":"Version of the Chemical Database available via SIRIUS web services"},"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."},"fingerprintId":{"type":"string","description":"Version of the Molecular Fingerprint used by SIRIUS"},"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"}},"required":["availableILPSolvers","supportedILPSolvers"]},"Solver":{"type":"string","enum":["GUROBI","CPLEX","GLPK","CLP"]},"ConnectionCheck":{"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"}}},"required":["errors","licenseInfo"]},"ConnectionError":{"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"},"serverResponseErrorMessage":{"type":"string"},"error":{"type":"boolean"},"warning":{"type":"boolean"}},"required":["errorKlass","errorType","siriusErrorCode","siriusMessage"]},"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."},"userId":{"type":"string","description":"User ID (uid) of the user account this license information belongs to."},"subscription":{"$ref":"#/components/schemas/Subscription","description":"The active subscription that was used the requested the information"},"consumables":{"$ref":"#/components/schemas/SubscriptionConsumables","description":"Status of the consumable resources of the {@link Subscription Subscription}."},"terms":{"type":"array","items":{"$ref":"#/components/schemas/Term"}}}},"SubscriptionConsumables":{"type":"object","properties":{"pendingJobs":{"type":"integer","format":"int32"},"countedCompounds":{"type":"integer","format":"int32"}}},"Term":{"type":"object","properties":{"name":{"type":"string"},"link":{"type":"string","format":"uri"}}},"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 c5dd1a32..b9aec43b 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":"Info","description":"Status und Information"},{"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":"Gui","description":"Basic GUI Control: Open and close SIRIUS Graphical User Interface (GUI) on specified projects."},{"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."}],"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 application","description":"Close project-space and remove it from application. 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"}}],"responses":{"200":{"description":"OK"}}}},"/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":{"description":"files to import into project","content":{"multipart/form-data":{"schema":{"type":"object","properties":{"inputFiles":{"type":"array","items":{"type":"string","format":"binary"}}}}}},"required":true},"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":{"type":"object","properties":{"inputFiles":{"type":"array","items":{"type":"string","format":"binary"}}}}}},"required":true},"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":{"description":"Files to import into project.","content":{"multipart/form-data":{"schema":{"type":"object","properties":{"inputFiles":{"type":"array","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters"}}}}},"required":true},"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":{"description":"Files to import into project.","content":{"multipart/form-data":{"schema":{"type":"object","properties":{"inputFiles":{"type":"array","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters"}}}}},"required":true},"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}/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":"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"]},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotations","topAnnotationsDeNovo","computedTools"]},"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"]},"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","topAnnotations","topAnnotationsDeNovo","computedTools"]},"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":"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","topAnnotations","topAnnotationsDeNovo","computedTools"]},"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","topAnnotations","topAnnotationsDeNovo","computedTools"]},"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/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":{"description":"files to be imported","content":{"multipart/form-data":{"schema":{"type":"object","properties":{"inputFiles":{"type":"array","items":{"type":"string","format":"binary"}}}}}},"required":true},"responses":{"200":{"description":"Job of the import command to be executed.","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":{"200":{"description":"OK","content":{"application/vnd.spring-boot.actuator.v3+json":{"schema":{"type":"object"}},"application/json":{"schema":{"type":"object"}},"application/vnd.spring-boot.actuator.v2+json":{"schema":{"type":"object"}}}}}}},"/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}/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}/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":"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"]},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotations","topAnnotationsDeNovo","computedTools"]},"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: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable.","description":"Returns the traces of the given compound. 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.","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/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":"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"]},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotations","topAnnotationsDeNovo","computedTools"]},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","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":"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","topAnnotations","topAnnotationsDeNovo","computedTools"]},"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: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable.","description":"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.","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":"List of spectral library matches for the given 'alignedFeatureId'.","description":"List of spectral library matches 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","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 matches of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpectralLibraryMatch"}}}}}}},"/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}/quantification":{"get":{"tags":["Features"],"summary":"EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable.","description":"Returns a single quantification table row for the given feature. The quantification table contains the intensity of the feature within all\n samples it is contained in.","operationId":"getQuantificationExperimental","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":"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_HEIGHT"]}}],"responses":{"200":{"description":"Quant table row for this feature","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantificationTableExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report":{"get":{"tags":["Features"],"summary":"EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable.","description":"Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"getAlignedFeaturesQualityExperimental","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 belong sto.","required":true,"schema":{"type":"string"}}],"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":"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":"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: This endpoint is experimental because it produces return values that are not yet stable.","description":"Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier\n These annotations are only available if a fragmentation tree is available.","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}}],"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: This endpoint is experimental because it produces return values that are not yet stable.","description":"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.","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"}}],"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 formula result identifier.","description":"Returns Lipid annotation (ElGordo) for the given formula result identifier.\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 (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting)\n for the given formula result identifier.","description":"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 This tree is used to rank formula candidates (treeScore).","description":"Returns fragmentation tree (SIRIUS) for the given formula result identifier\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\n This fingerprint is used to perform structure database search and predict compound classes.","description":"Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier\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"]},"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"]},"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"]},"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"]},"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":"Best matching compound classes,\n Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology,","description":"Best matching compound classes,\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.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier\n These annotations are only available if a fragmentation tree is available.","description":"Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier\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}}],"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 (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.","description":"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"}}],"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":"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":{"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"]},"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}/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"]},"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"]},"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"]},"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: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable.","description":"Returns the adduct network for a given aligned feature id together with all merged traces contained in the network.","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/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":"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","topAnnotations","topAnnotationsDeNovo","computedTools"]},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeatures with additional annotations and MS/MS data (if specified).","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: use /job-configs to get all configs with names.","description":"Get all (non-default) job configuration names","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 contains also all available custom DB.","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/json":{"schema":{"type":"object"}},"application/vnd.spring-boot.actuator.v2+json":{"schema":{"type":"object"}}}}}}}},"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":["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}}},"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}}},"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}}},"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}},"peakDeviationPpm":{"type":"number","description":"Maximum allowed mass deviation in ppm for matching peaks.","format":"double","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},"scoring":{"type":"string","description":"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,"enum":["INTENSITY","GAUSSIAN","MODIFIED_COSINE"]}},"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"}},"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},"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},"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},"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"}}}},"LcmsSubmissionParameters":{"type":"object","properties":{"alignLCMSRuns":{"type":"boolean","description":"Specifies whether LC/MS runs should be aligned","default":true}}},"BasicSpectrum":{"required":["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},"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)","format":"double","nullable":true}},"nullable":true},"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."},"SimplePeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"}}},"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"}},"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":["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},"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)","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},"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},"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"}}},"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},"DBLink":{"required":["name"],"type":"object","properties":{"name":{"type":"string"},"id":{"type":"string"}},"nullable":true},"Deviation":{"type":"object","properties":{"ppm":{"type":"number","format":"double"},"absolute":{"type":"number","format":"double"}},"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":{"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 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},"SpectralLibraryMatch":{"required":["inchiKey","querySpectrumIndex","similarity","uuid"],"type":"object","properties":{"specMatchId":{"type":"string"},"rank":{"type":"integer","format":"int32"},"similarity":{"type":"number","format":"double"},"sharedPeaks":{"type":"integer","format":"int32"},"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":"string"},"smiles":{"type":"string"},"inchiKey":{"type":"string"},"referenceSpectrum":{"$ref":"#/components/schemas/BasicSpectrum"}},"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},"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},"xlogP":{"type":"number","format":"double","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"}}},"nullable":true},"StructureCandidateScored":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"xlogP":{"type":"number","format":"double","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"}},"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"}}},"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."},"PageMetadata":{"type":"object","properties":{"size":{"type":"integer","format":"int64"},"number":{"type":"integer","format":"int64"},"totalElements":{"type":"integer","format":"int64"},"totalPages":{"type":"integer","format":"int64"}}},"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"},"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."},"PagedModelCompound":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"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"}}},"QuantificationTableExperimental":{"type":"object","properties":{"quantificationType":{"type":"string","enum":["APEX_HEIGHT"]},"rowType":{"type":"string","enum":["FEATURES"]},"columnType":{"type":"string","enum":["SAMPLES"]},"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."},"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"}}},"StructureCandidateFormula":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"xlogP":{"type":"number","format":"double","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"}},"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"}}},"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}}}} \ No newline at end of file +{"openapi":"3.1.0","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","default":["none"],"items":{"type":"string","enum":["none","compatibilityInfo","sizeInformation"]}}}],"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","default":["none"],"items":{"type":"string","enum":["none","compatibilityInfo","sizeInformation"]}}}],"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","default":["none"],"items":{"type":"string","enum":["none","compatibilityInfo","sizeInformation"]}}}],"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","default":["progress"],"items":{"type":"string","enum":["none","command","progress","affectedIds"]}}}],"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","default":["progress"],"items":{"type":"string","enum":["none","command","progress","affectedIds"]}}}],"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","default":["none"],"items":{"type":"string","enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]}}}],"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","default":["progress"],"items":{"type":"string","enum":["none","command","progress","affectedIds"]}}}],"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":{"type":"string","pattern":"^[a-zA-Z0-9-_]+$"}}],"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","default":["none"],"items":{"type":"string","enum":["none","command","progress","affectedIds"]}}}],"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","default":["command","progress"],"items":{"type":"string","enum":["none","command","progress","affectedIds"]}}}],"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","default":["command","progress"],"items":{"type":"string","enum":["none","command","progress","affectedIds"]}}}],"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":{"type":"object","properties":{"inputFiles":{"type":"array","description":"files to import into project","items":{"type":"string","format":"binary"}}},"required":["inputFiles"]}}}},"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","default":["progress"],"items":{"type":"string","enum":["none","command","progress","affectedIds"]}}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"inputFiles":{"type":"array","items":{"type":"string","format":"binary"}}},"required":["inputFiles"]}}}},"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":{"type":"object","properties":{"inputFiles":{"type":"array","description":"Files to import into project.","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters","description":"Parameters for feature alignment and feature finding."}},"required":["inputFiles","parameters"]}}}},"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","default":["progress"],"items":{"type":"string","enum":["none","command","progress","affectedIds"]}}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"inputFiles":{"type":"array","description":"Files to import into project.","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters","description":"Parameters for feature alignment and feature finding."}},"required":["inputFiles","parameters"]}}}},"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 [EXPERIMENTAL] 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","default":["none"],"items":{"type":"string","enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]}}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","default":["none"],"items":{"type":"string","enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]}}}],"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","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","default":["none"],"items":{"type":"string","enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]}}},{"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","default":["none"],"items":{"type":"string","enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]}}}],"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","default":["none"],"items":{"type":"string","enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]}}}],"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","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","default":["none"],"items":{"type":"string","enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]}}}],"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":{"type":"object","properties":{"inputFiles":{"type":"array","description":"files to be imported","items":{"type":"string","format":"binary"}},"bioTransformerParameters":{"$ref":"#/components/schemas/BioTransformerParameters","description":"configuration for biotransformer execution. If null, BioTransformer is not applied."}},"required":["inputFiles"]}}}},"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":{}}}},"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","default":[],"items":{"$ref":"#/components/schemas/RunOptField"}}}],"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
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.
A clause may be:
\ntags.MyTagA:sampletags.MyTagA:"Some Text"tags.MyTagA:/[mb]oat/tags.MyTagB<3[ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3] Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )
The syntax allows to build complex filter queries such as:
\n\ntags.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 [EXPERIMENTAL] 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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":[],"items":{"$ref":"#/components/schemas/RunOptField"}}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"$ref":"#/components/schemas/RunOptField"}}}],"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","default":["progress"],"items":{"type":"string","enum":["none","command","progress","affectedIds"]}}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"type":"string","enum":["none","command","progress","affectedIds"]}}}],"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","default":["none"],"items":{"type":"string","enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]}}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","default":["none"],"items":{"type":"string","enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]}}}],"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
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.
A clause may be:
\ntags.MyTagA:sampletags.MyTagA:"Some Text"tags.MyTagA:/[mb]oat/tags.MyTagB<3[ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3] Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )
The syntax allows to build complex filter queries such as:
\n\ntags.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 [EXPERIMENTAL] 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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"type":"string","enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]}}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","default":["none"],"items":{"type":"string","enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]}}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"type":"string","enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]}}}],"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","default":["none"],"items":{"type":"string","enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]}}}],"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","default":["none"],"items":{"type":"string","enum":["none","referenceSpectrum"]}}}],"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","default":["none"],"items":{"type":"string","enum":["none","referenceSpectrum"]}}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"type":"string","enum":["none","referenceSpectrum"]}}}],"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","default":["none"],"items":{"type":"string","enum":["none","statistics","fragmentationTree","annotatedSpectrum","isotopePattern","lipidAnnotation","predictedFingerprint","compoundClasses","canopusPredictions"]}}}],"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","default":["none"],"items":{"type":"string","enum":["none","statistics","fragmentationTree","annotatedSpectrum","isotopePattern","lipidAnnotation","predictedFingerprint","compoundClasses","canopusPredictions"]}}}],"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","default":["none"],"items":{"type":"string","enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]}}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"type":"string","enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]}}}],"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","default":["none"],"items":{"type":"string","enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]}}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"type":"string","enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]}}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"type":"string","enum":["none","statistics","fragmentationTree","annotatedSpectrum","isotopePattern","lipidAnnotation","predictedFingerprint","compoundClasses","canopusPredictions"]}}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"type":"string","enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]}}}],"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","default":["none"],"items":{"type":"string","enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]}}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"type":"string","enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]}}}],"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
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.
A clause may be:
\ntags.MyTagA:sampletags.MyTagA:"Some Text"tags.MyTagA:/[mb]oat/tags.MyTagB<3[ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3] Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )
The syntax allows to build complex filter queries such as:
\n\ntags.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 [EXPERIMENTAL] 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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":[],"items":{"type":"string","enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]}}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"type":"string","enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]}}}],"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":{"type":"integer","default":0,"minimum":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"type":"integer","default":20,"minimum":1}},{"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","default":["none"],"items":{"type":"string","enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]}}}],"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":{"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"},"featuredId":{"type":"string"},"formulaId":{"type":"string"},"structureInChIKey":{"type":"string"}}},"DataImportEvent":{"properties":{"importJobId":{"type":"string"},"importedCompoundIds":{"type":"array","items":{"type":"string"}},"importedFeatureIds":{"type":"array","items":{"type":"string"}}},"required":["importedCompoundIds","importedFeatureIds"]},"BackgroundComputationsStateEvent":{"properties":{"affectedJobs":{"type":"array","items":{"$ref":"#/components/schemas/Job"}},"numberOfJobs":{"type":"integer","format":"int32"},"numberOfRunningJobs":{"type":"integer","format":"int32"},"numberOfFinishedJobs":{"type":"integer","format":"int32"}},"required":["affectedJobs","numberOfFinishedJobs","numberOfJobs","numberOfRunningJobs"]},"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."},"type":{"type":"string","description":"Type of this project.\n NULL if project type has not yet been specified by importing data.","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."},"numOfFeatures":{"type":"integer","format":"int32","description":"Number of features (aligned over runs) in this project. If NULL, information has not been requested (See OptField 'sizeInformation')."},"numOfCompounds":{"type":"integer","format":"int32","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."},"numOfBytes":{"type":"integer","format":"int64","description":"Size in Bytes this project consumes on disk If NULL, Information has not been requested (See OptField 'sizeInformation')."}}},"TagDefinitionImport":{"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."},"tagType":{"type":"string","description":"A simple string based identifier to specify the type/scope/purpose of this tag."},"valueType":{"type":"string","enum":["NONE","BOOLEAN","INTEGER","REAL","TEXT","DATE","TIME"]},"possibleValues":{"type":"array","items":{}},"minValue":{},"maxValue":{}},"required":["tagName","valueType"]},"TagDefinition":{"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."},"tagType":{"type":"string","description":"A simple string based identifier to specify the type/scope/purpose of this tag."},"valueType":{"type":"string","enum":["NONE","BOOLEAN","INTEGER","REAL","TEXT","DATE","TIME"]},"possibleValues":{"type":"array","items":{}},"minValue":{},"maxValue":{},"editable":{"type":"boolean"}},"required":["tagName","valueType"]},"Tag":{"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":{"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)."}},"required":["tagName"]},"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","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.","properties":{"id":{"type":"string","description":"Unique identifier to access the job via the API"},"command":{"type":"string","description":"Command string of the executed Task"},"progress":{"$ref":"#/components/schemas/JobProgress","description":"Optional progress information of this job"},"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","items":{"type":"string"}},"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","items":{"type":"string"}},"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","enum":["IMPORT","COMPUTATION","DELETION"]}}},"JobProgress":{"type":"object","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.","properties":{"indeterminate":{"type":"boolean","description":"Is the progress indeterminate or not"},"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","format":"int64","description":"Current progress value of the job."},"maxProgress":{"type":"integer","format":"int64","description":"Progress value to reach (might also change during execution)"},"message":{"type":"string","description":"Progress information and warnings."},"errorMessage":{"type":"string","description":"Error message if the job did not finish successfully failed."}}},"BasicSpectrum":{"type":"object","properties":{"name":{"type":"string","description":"Optional Displayable name of this spectrum."},"msLevel":{"type":"integer","format":"int32","description":"MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero"},"collisionEnergy":{"type":"string","description":"Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable"},"instrument":{"type":"string","description":"Instrument information."},"precursorMz":{"type":"number","format":"double","description":"Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable"},"scanNumber":{"type":"integer","format":"int32","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)"},"cosineQuery":{"type":"boolean","default":false,"description":"True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra."},"precursorPeak":{"$ref":"#/components/schemas/SimplePeak","description":"A separate precursor peak field to either mark the precursor in the peaklist or\n provide the precursor peak separately from the spectrum in case the spectrum is in a preprocessed form where\n the precursor peak has been removed for library matching.\n\n NULL if the spectrum does not contain the precursor peak."},"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","format":"double","deprecated":true,"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."},"maxNormFactor":{"type":"number","format":"double","description":"Factor to convert absolute intensities to MAX norm."},"sumNormFactor":{"type":"number","format":"double","description":"Factor to convert absolute intensities to SUM norm."},"l2NormFactor":{"type":"number","format":"double","description":"Factor to convert absolute intensities to L2 (Euclidean) norm."},"firstPeakNormFactor":{"type":"number","format":"double","description":"Factor to convert absolute intensities to normalize intensities by first peak intensity."}},"required":["cosineQuery","peaks"]},"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","format":"int32","description":"Size of the fingerprint (masked fp), e.g. to reconstruct the binary array from the array of set bits"}}},"DBLink":{"type":"object","properties":{"name":{"type":"string"},"id":{"type":"string"}},"required":["name"]},"PeakPair":{"type":"object","properties":{"queryPeak":{"type":"integer","format":"int32"},"referencePeak":{"type":"integer","format":"int32"}},"required":["queryPeak","referencePeak"]},"SimplePeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"}}},"SpectralLibraryMatch":{"type":"object","properties":{"specMatchId":{"type":"string"},"rank":{"type":"integer","format":"int32"},"similarity":{"type":"number","format":"float","description":"Similarity between query and reference spectrum"},"sharedPeaks":{"type":"integer","format":"int32","description":"Number of shared/matched peaks"},"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"]}},"required":["inchiKey","querySpectrumIndex","similarity","uuid"]},"StructureCandidateFormula":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string"},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter"},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","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","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double"},"rank":{"type":"integer","format":"int32","description":"the overall rank of this candidate among all candidates of this feature"},"csiScore":{"type":"number","format":"double","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"},"tanimotoSimilarity":{"type":"number","format":"double","description":"Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID"},"mcesDistToTopHit":{"type":"number","format":"double","description":"Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list."},"fingerprint":{"$ref":"#/components/schemas/BinaryFingerprint","description":"Array containing the indices of the molecular fingerprint that are available in the structure (1 if present)\n OPTIONAL: needs to be added by parameter"},"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"},"location":{"type":"string","description":"Storage location of user database\n Might be NULL for non-user databases or if default location is used."},"matchRtOfReferenceSpectra":{"type":"boolean","default":false,"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"}}},"SearchableDatabase":{"type":"object","properties":{"displayName":{"type":"string","description":"display name of the database\n Should be short"},"location":{"type":"string","description":"Storage location of user database\n Might be NULL for non-user databases or if default location is used."},"matchRtOfReferenceSpectra":{"type":"boolean","default":false,"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"},"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."},"dbVersion":{"type":"integer","format":"int32","description":"database schema version"},"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","format":"int64","description":"Number of unique compounds available in this database."},"numberOfFormulas":{"type":"integer","format":"int64","description":"Number of different molecular formulas available in this database."},"numberOfReferenceSpectra":{"type":"integer","format":"int64","description":"Number of reference spectra available in this database"},"errorMessage":{"type":"string","description":"Error message if the database could not be loaded"}},"required":["customDb","databaseId","searchable","updateNeeded"]},"AccountInfo":{"type":"object","properties":{"userID":{"type":"string"},"username":{"type":"string"},"userEmail":{"type":"string"},"gravatarURL":{"type":"string"},"subscriptions":{"type":"array","items":{"$ref":"#/components/schemas/Subscription"}},"activeSubscriptionId":{"type":"string"}}},"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"},"expirationDate":{"type":"string","format":"date-time"},"startDate":{"type":"string","format":"date-time"},"countQueries":{"type":"boolean"},"instanceLimit":{"type":"integer","format":"int32","description":"Limit of instances (features) that can be computed with this subscription"},"instanceHashRecordingTime":{"type":"integer","format":"int32","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"},"maxQueriesPerInstance":{"type":"integer","format":"int32","description":"Maximum number of queries (e.g. prediction) that can be performed\n for one instance before it is counted another time."},"maxUserAccounts":{"type":"integer","format":"int32"},"serviceUrl":{"type":"string"},"description":{"type":"string"},"name":{"type":"string"},"tos":{"type":"string"},"pp":{"type":"string"},"allowedFeatures":{"$ref":"#/components/schemas/AllowedFeatures"}}},"Canopus":{"type":"object","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","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"}}},"FingerprintPrediction":{"type":"object","description":"User/developer friendly parameter subset for the CSI:FingerID Fingerprint tool\n Needs results from Formula/SIRIUS Tool","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."},"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."}}},"JobSubmission":{"type":"object","description":"Object to submit a job to be executed by SIRIUS","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.","items":{"type":"string"}},"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.","items":{"type":"string"}},"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]-","items":{"type":"string"}},"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]-","items":{"type":"string"}},"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]-","items":{"type":"string"}},"recompute":{"type":"boolean","description":"Indicate if already existing result for a tool to be executed should be overwritten or not."},"spectraSearchParams":{"$ref":"#/components/schemas/SpectralLibrarySearch","description":"Parameter Object for spectral library search tool (CLI-Tool: spectra-search).\n Library search results can be used to enhance formula search results\n If NULL the tool will not be executed."},"formulaIdParams":{"$ref":"#/components/schemas/Sirius","description":"Parameter Object for molecular formula identification tool (CLI-Tool: formula, sirius).\n If NULL the tool will not be executed."},"zodiacParams":{"$ref":"#/components/schemas/Zodiac","description":"Parameter Object for network based molecular formula re-ranking (CLI-Tool: zodiac).\n If NULL the tool will not be executed."},"fingerprintPredictionParams":{"$ref":"#/components/schemas/FingerprintPrediction","description":"Parameter Object for Fingerprint prediction with CSI:FingerID (CLI-Tool: fingerint).\n If NULL the tool will not be executed."},"canopusParams":{"$ref":"#/components/schemas/Canopus","description":"Parameter Object for CANOPUS compound class prediction tool (CLI-Tool: canopus).\n If NULL the tool will not be executed."},"structureDbSearchParams":{"$ref":"#/components/schemas/StructureDbSearch","description":"Parameter Object for structure database search with CSI:FingerID (CLI-Tool: structure).\n If NULL the tool will not be executed."},"msNovelistParams":{"$ref":"#/components/schemas/MsNovelist","description":"Parameter Object for MsNovelist DeNovo structure generation (CLI-Tool: msnovelist)\n If NULL the tool will not be executed."},"configMap":{"type":"object","additionalProperties":{"type":"string"},"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."}}},"MsNovelist":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"numberOfCandidateToPredict":{"type":"integer","format":"int32","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."}}},"Sirius":{"type":"object","description":"User/developer friendly parameter subset for the Formula/SIRIUS tool\n Can use results from Spectral library search tool.","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.","enum":["QTOF","ORBITRAP"]},"numberOfCandidates":{"type":"integer","format":"int32","description":"Number of formula candidates to keep as result list (Formula Candidates)."},"numberOfCandidatesPerIonization":{"type":"integer","format":"int32","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."},"massAccuracyMS2ppm":{"type":"number","format":"double","description":"Maximum allowed mass deviation. Only molecular formulas within this mass window are considered."},"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","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."},"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."},"performBottomUpSearch":{"type":"boolean","description":"If true, molecular formula generation via bottom up search is enabled."},"performDenovoBelowMz":{"type":"number","format":"double","description":"Specifies the m/z below which de novo molecular formula generation is enabled. Set to 0 to disable de novo molecular formula generation."},"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.","items":{"type":"string"}},"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."},"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"},"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)"},"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)","items":{"type":"string"}},"ilpTimeout":{"$ref":"#/components/schemas/Timeout","description":"Timout settings for the ILP solver used for fragmentation tree computation\n secondsPerInstance: Set the maximum number of seconds for computing a single compound. Set to 0 to disable the time constraint.\n secondsPerTree: Set the maximum number of seconds for a single molecular formula check. Set to 0 to disable the time constraint"},"useHeuristic":{"$ref":"#/components/schemas/UseHeuristic","description":"Mass thresholds for heuristic fragmentation tree computation which dramatically speeds up computations.\n useHeuristicAboveMz: For compounds above this threshold fragmentation trees will be computed heuristically for ranking. Tree that will be kept (numberOfCandidates) will be recomputed exactly\n useOnlyHeuristicAboveMz:For compounds above this threshold fragmentation trees will be computed heuristically."},"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"},"minScoreToInjectSpecLibMatch":{"type":"number","format":"double","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."},"minPeaksToInjectSpecLibMatch":{"type":"integer","format":"int32","description":"Matching peaks threshold to inject formula candidates no matter which score they have or which filter is applied."}}},"SpectralLibrarySearch":{"type":"object","description":"User/developer friendly parameter subset for the Spectral library search tool.","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.","items":{"type":"string"}},"precursorDeviationPpm":{"type":"number","format":"double","description":"Maximum allowed mass deviation in ppm for matching the precursor. If not specified, the same value as for the peaks is used."},"minSimilarity":{"type":"number","format":"float","description":"Minimal spectral similarity of a spectral match to be considered a hit."},"minNumOfPeaks":{"type":"integer","format":"int32","description":"Minimal number of matching peaks of a spectral match to be considered a hit."},"enableAnalogueSearch":{"type":"boolean","description":"Enable analogue search in addition to the identity spectral library search"},"minSimilarityAnalogue":{"type":"number","format":"float","description":"Minimal spectral similarity of a spectral match to be considered an analogue hit."},"minNumOfPeaksAnalogue":{"type":"integer","format":"int32","description":"Minimal number of matching peaks of a spectral match to be considered an analogue hit."},"scoring":{"type":"string","deprecated":true,"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.","enum":["INTENSITY","GAUSSIAN","MODIFIED_COSINE","FAST_COSINE"]},"peakDeviationPpm":{"type":"number","format":"double","deprecated":true,"description":"NO LONGER SUPPORTED (IGNORED)\n Maximum allowed mass deviation in ppm for matching peaks."}}},"StructureDbSearch":{"type":"object","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.","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.","items":{"type":"string"}},"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."},"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.","enum":["OFF","EXACT","APPROXIMATE"]}}},"Timeout":{"type":"object","properties":{"numberOfSecondsPerDecomposition":{"type":"integer","format":"int32"},"numberOfSecondsPerInstance":{"type":"integer","format":"int32"}}},"UseHeuristic":{"type":"object","properties":{"useHeuristicAboveMz":{"type":"integer","format":"int32"},"useOnlyHeuristicAboveMz":{"type":"integer","format":"int32"}}},"Zodiac":{"type":"object","description":"User/developer friendly parameter subset for the ZODIAC tool (Network base molecular formula re-ranking).\n Needs results from Formula/SIRIUS Tool","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"consideredCandidatesAt300Mz":{"type":"integer","format":"int32","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."},"consideredCandidatesAt800Mz":{"type":"integer","format":"int32","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."},"runInTwoSteps":{"type":"boolean","description":"As default ZODIAC runs a 2-step approach. First running 'good quality compounds' only, and afterwards including the remaining."},"edgeFilterThresholds":{"$ref":"#/components/schemas/ZodiacEdgeFilterThresholds","description":"thresholdFilter = Defines the proportion of edges of the complete network which will be ignored.\n minLocalConnections = Minimum number of compounds to which at least one candidate per compound must be connected to."},"gibbsSamplerParameters":{"$ref":"#/components/schemas/ZodiacEpochs","description":"iterations: \"Number of epochs to run the Gibbs sampling. When multiple Markov chains are computed, all chains' iterations sum up to this value.\"\n burnInPeriod: \"Number of epochs considered as 'burn-in period'.\n numberOfMarkovChains: Number of separate Gibbs sampling runs."},"librarySearchAnchors":{"$ref":"#/components/schemas/ZodiacLibraryScoring","description":"Configure the use of identity spectral library search results as anchors in ZODIAC network"},"analogueSearchAnchors":{"$ref":"#/components/schemas/ZodiacAnalogueNodes","description":"Configure the use of analogue spectral library search results as anchors in ZODIAC network"}}},"ZodiacAnalogueNodes":{"type":"object","properties":{"enabled":{"type":"boolean"},"minSimilarity":{"type":"number","format":"double"},"minSharedPeaks":{"type":"integer","format":"int32"}}},"ZodiacEdgeFilterThresholds":{"type":"object","properties":{"thresholdFilter":{"type":"number","format":"double"},"minLocalCandidates":{"type":"integer","format":"int32"},"minLocalConnections":{"type":"integer","format":"int32"}}},"ZodiacEpochs":{"type":"object","properties":{"iterations":{"type":"integer","format":"int32"},"burnInPeriod":{"type":"integer","format":"int32"},"numberOfMarkovChains":{"type":"integer","format":"int32"}}},"ZodiacLibraryScoring":{"type":"object","properties":{"enabled":{"type":"boolean"},"minSimilarity":{"type":"number","format":"double"}}},"ImportResult":{"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"}}},"required":["affectedAlignedFeatureIds","affectedCompoundIds"]},"Deviation":{"type":"object","properties":{"ppm":{"type":"number","format":"double"},"absolute":{"type":"number","format":"double"}}},"LcmsSubmissionParameters":{"type":"object","properties":{"alignLCMSRuns":{"type":"boolean","default":true,"description":"Specifies whether LC/MS runs should be aligned"},"noiseIntensity":{"type":"number","format":"double","default":-1,"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."},"traceMaxMassDeviation":{"$ref":"#/components/schemas/Deviation","default":"null","description":"Maximal allowed mass deviation for peaks in ms1 to be considered as belonging to the same trace."},"alignMaxMassDeviation":{"$ref":"#/components/schemas/Deviation","default":"null","description":"Maximal allowed mass deviation for aligning features. If not specified, this parameter is estimated from data."},"alignMaxRetentionTimeDeviation":{"type":"number","format":"double","default":-1,"description":"Maximal allowed retention time error in seconds for aligning features. If not specified, this parameter is estimated from data."},"minSNR":{"type":"number","format":"double","default":3,"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"}}},"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":{"type":"object","properties":{"name":{"type":"string","description":"Some (optional) human-readable name"},"features":{"type":"array","description":"The features this compound consists of.","items":{"$ref":"#/components/schemas/FeatureImport"}}},"required":["features"]},"FeatureImport":{"type":"object","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.","properties":{"name":{"type":"string"},"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."},"ionMass":{"type":"number","format":"double"},"charge":{"type":"integer","format":"int32"},"detectedAdducts":{"type":"array","description":"Detected adducts of this feature. Can be NULL or empty if no adducts are known.","items":{"type":"string"},"uniqueItems":true},"rtStartSeconds":{"type":"number","format":"double"},"rtEndSeconds":{"type":"number","format":"double"},"rtApexSeconds":{"type":"number","format":"double"},"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.","enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"mergedMs1":{"$ref":"#/components/schemas/BasicSpectrum","description":"Merged/Representative MS1 spectrum of this feature that contains the isotope pattern of the precursor ion.\n Note: 'ms1Spectra' will be ignored if given."},"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.","items":{"$ref":"#/components/schemas/BasicSpectrum"}},"ms2Spectra":{"type":"array","description":"List of MS/MS spectra that belong to this feature.","items":{"$ref":"#/components/schemas/BasicSpectrum"}}},"required":["charge","ionMass"]},"AlignedFeature":{"type":"object","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.","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","format":"int32","description":"Ion mode (charge) this feature has been measured in."},"detectedAdducts":{"type":"array","description":"Adducts of this feature that have been detected during preprocessing.","items":{"type":"string"},"uniqueItems":true},"rtStartSeconds":{"type":"number","format":"double"},"rtEndSeconds":{"type":"number","format":"double"},"rtApexSeconds":{"type":"number","format":"double"},"quality":{"type":"string","description":"Quality of this feature.","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","description":"Mass Spec data of this feature (input data)"},"topAnnotations":{"$ref":"#/components/schemas/FeatureAnnotations","description":"Top annotations of this feature.\n If a CSI:FingerID structureAnnotation is available, the FormulaCandidate that corresponds to the\n structureAnnotation is returned. Otherwise, it's the FormulaCandidate with the highest SiriusScore is returned.\n CANOPUS Compound classes correspond to the FormulaCandidate no matter how it was selected\n\n Null if it was not requested und non-null otherwise."},"topAnnotationsDeNovo":{"$ref":"#/components/schemas/FeatureAnnotations","description":"Top de novo annotations of this feature.\n The FormulaCandidate with the highest SiriusScore is returned. MSNovelist structureAnnotation and\n CANOPUS compoundClasses correspond to the FormulaCandidate.\n\n Null if it was not requested und non-null otherwise."},"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","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."},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag"}},"required":["charge","detectedAdducts"]},"AnnotatedPeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"},"peakAnnotation":{"$ref":"#/components/schemas/PeakAnnotation"}}},"AnnotatedSpectrum":{"type":"object","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","properties":{"name":{"type":"string","description":"Optional Displayable name of this spectrum."},"msLevel":{"type":"integer","format":"int32","description":"MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero"},"collisionEnergy":{"type":"string","description":"Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable"},"instrument":{"type":"string","description":"Instrument information."},"precursorMz":{"type":"number","format":"double","description":"Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable"},"scanNumber":{"type":"integer","format":"int32","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)"},"cosineQuery":{"type":"boolean","default":false,"description":"True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra."},"precursorPeak":{"$ref":"#/components/schemas/SimplePeak","description":"A separate precursor peak field to either mark the precursor in the peaklist or\n provide the precursor peak separately from the spectrum in case the spectrum is in a preprocessed form where\n the precursor peak has been removed for library matching.\n\n NULL if the spectrum does not contain the precursor peak."},"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","format":"double","deprecated":true,"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."},"maxNormFactor":{"type":"number","format":"double","description":"Factor to convert absolute intensities to MAX norm."},"sumNormFactor":{"type":"number","format":"double","description":"Factor to convert absolute intensities to SUM norm."},"l2NormFactor":{"type":"number","format":"double","description":"Factor to convert absolute intensities to L2 (Euclidean) norm."},"firstPeakNormFactor":{"type":"number","format":"double","description":"Factor to convert absolute intensities to normalize intensities by first peak intensity."},"spectrumAnnotation":{"$ref":"#/components/schemas/SpectrumAnnotation","description":"Optional Annotations of this spectrum."}},"required":["cosineQuery","peaks"]},"CanopusPrediction":{"type":"object","description":"Container class that holds the CANOPUS compound class predictions for alle predictable compound classes.\n This is the full CANOPUS result.","properties":{"classyFireClasses":{"type":"array","description":"All predicted ClassyFire classes","items":{"$ref":"#/components/schemas/CompoundClass"}},"npcClasses":{"type":"array","description":"All predicted NPC classes","items":{"$ref":"#/components/schemas/CompoundClass"}}}},"Compound":{"type":"object","properties":{"compoundId":{"type":"string","description":"uid of this compound Entity"},"name":{"type":"string","description":"Some (optional) human-readable name"},"rtStartSeconds":{"type":"number","format":"double","description":"The merged/consensus retention time start (earliest rt) of this compound"},"rtEndSeconds":{"type":"number","format":"double","description":"The merged/consensus retention time end (latest rt) of this compound"},"neutralMass":{"type":"number","format":"double","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"},"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","description":"The consensus of the top annotations from all the features of this compound.\n Null if it was not requested und non-null otherwise. Might contain empty fields if results are not available"},"consensusAnnotationsDeNovo":{"$ref":"#/components/schemas/ConsensusAnnotationsDeNovo","description":"The consensus of the top de novo annotations from all the features of this compound.\n Null if it was not requested und non-null otherwise. Might contain empty fields if results are not available"},"customAnnotations":{"$ref":"#/components/schemas/ConsensusAnnotationsCSI","description":"Alternative annotations selected by the User."},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag"}}},"CompoundClass":{"type":"object","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","properties":{"type":{"type":"string","description":"Specifies the classification ontology the CompoundClass belongs to.","enum":["ClassyFire","NPC"]},"level":{"type":"string","description":"Name of the level this compound class belongs to"},"levelIndex":{"type":"integer","format":"int32","description":"Index of the level this compound class belongs to"},"name":{"type":"string","description":"Name of the compound class."},"description":{"type":"string","description":"Description of the compound class."},"id":{"type":"integer","format":"int32","description":"Unique id of the class. Might be undefined for certain classification ontologies."},"probability":{"type":"number","format":"double","description":"prediction probability"},"index":{"type":"integer","format":"int32","description":"Absolute index of this property in the predicted vector/embedding"},"parentId":{"type":"integer","format":"int32","description":"Unique id of the parent class. Might be undefined for certain classification ontologies."},"parentName":{"type":"string","description":"Name of the parent compound class."}}},"CompoundClasses":{"type":"object","description":"Container class that holds the most likely compound class for different levels of each ontology for a\n certain Compound/Feature/FormulaCandidate/PredictedFingerprint.","properties":{"npcPathway":{"$ref":"#/components/schemas/CompoundClass","description":"Pathway level NPC class with the highest probability"},"npcSuperclass":{"$ref":"#/components/schemas/CompoundClass","description":"Superclass level NPC class with the highest probability"},"npcClass":{"$ref":"#/components/schemas/CompoundClass","description":"Class level NPC class with the highest probability"},"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","items":{"$ref":"#/components/schemas/CompoundClass"}},"classyFireAlternatives":{"type":"array","description":"Alternative ClassyFire classes with high probability that do not fit into the linage","items":{"$ref":"#/components/schemas/CompoundClass"}}}},"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"}}},"ConsensusAnnotationsCSI":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula of the consensus annotation\n Might be null if no consensus formula is available."},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses","description":"Compound classes (predicted with CANOPUS) corresponding to the molecularFormula\n Might be null if no fingerprints or compound classes are available."},"supportingFeatureIds":{"type":"array","description":"FeatureIds where the topAnnotation supports this annotation.","items":{"type":"string"}},"selectionCriterion":{"type":"string","description":"Null if this is a custom selection","enum":["MAJORITY_STRUCTURE","CONFIDENCE_STRUCTURE","SINGLETON_STRUCTURE","MAJORITY_FORMULA","TOP_FORMULA","SINGLETON_FORMULA"]},"csiFingerIdStructure":{"$ref":"#/components/schemas/StructureCandidate","description":"Database structure candidate (searched with CSI:FingerID), that also defines the molecularFormula\n Might be null if no consensus structure is available."},"confidenceExactMatch":{"type":"number","format":"double","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"},"confidenceApproxMatch":{"type":"number","format":"double","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"}}},"ConsensusAnnotationsDeNovo":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula of the consensus annotation\n Might be null if no consensus formula is available."},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses","description":"Compound classes (predicted with CANOPUS) corresponding to the molecularFormula\n Might be null if no fingerprints or compound classes are available."},"supportingFeatureIds":{"type":"array","description":"FeatureIds where the topAnnotation supports this annotation.","items":{"type":"string"}},"selectionCriterion":{"type":"string","description":"Criterion that was used to select the consensus annotation.","enum":["MAJORITY_FORMULA","TOP_FORMULA","SINGLETON_FORMULA"]}}},"FeatureAnnotations":{"type":"object","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.","properties":{"formulaAnnotation":{"$ref":"#/components/schemas/FormulaCandidate","description":"Best matching FormulaCandidate."},"structureAnnotation":{"$ref":"#/components/schemas/StructureCandidateScored","description":"Best matching StructureCandidate ranked by CSI:FingerID Score over all FormulaCandidates."},"compoundClassAnnotation":{"$ref":"#/components/schemas/CompoundClasses","description":"Best matching compound classes that correspond to the formulaAnnotation"},"confidenceExactMatch":{"type":"number","format":"double","description":"Confidence Score that represents the confidence whether the top hit is correct."},"confidenceApproxMatch":{"type":"number","format":"double","description":"Confidence Score that represents the confidence whether the top hit or a very similar hit (estimated by MCES distance) is correct."},"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)","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.","items":{"type":"string"}},"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.","items":{"type":"string"}}}},"FormulaCandidate":{"type":"object","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.","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","format":"double","description":"Normalized Sirius Score of the formula candidate.\n If NULL result is not available"},"siriusScore":{"type":"number","format":"double","description":"Sirius Score (isotope + tree score) of the formula candidate.\n If NULL result is not available"},"isotopeScore":{"type":"number","format":"double"},"treeScore":{"type":"number","format":"double"},"zodiacScore":{"type":"number","format":"double","description":"Zodiac Score of the formula candidate.\n If NULL result is not available"},"numOfExplainedPeaks":{"type":"integer","format":"int32"},"numOfExplainablePeaks":{"type":"integer","format":"int32"},"totalExplainedIntensity":{"type":"number","format":"double"},"medianMassDeviation":{"$ref":"#/components/schemas/Deviation"},"fragmentationTree":{"$ref":"#/components/schemas/FragmentationTree","description":"The fragmentation tree that belongs to this molecular formula candidate (produces the treeScore)."},"annotatedSpectrum":{"$ref":"#/components/schemas/AnnotatedSpectrum","description":"Fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses"},"isotopePatternAnnotation":{"$ref":"#/components/schemas/IsotopePatternAnnotation","description":"The measured and simulated isotope pattern that have been compared against each other to produce the isotopeScore."},"lipidAnnotation":{"$ref":"#/components/schemas/LipidAnnotation","description":"ElGordo lipid annotation of this candidate.\n NULL if annotation was not requested. lipidAnnotation.lipidSpecies == NULL if candidate has not been classified as a lipid"},"predictedFingerprint":{"type":"array","description":"Probabilistic molecular fingerprint predicted by CSI:FingerID","items":{"type":"number","format":"double"}},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses","description":"Most likely compound classes for different levels of each ontology for this FormulaCandidate (predictedFingerprint)"},"canopusPrediction":{"$ref":"#/components/schemas/CanopusPrediction","description":"All classes predicted by canopus for this FormulaCandidate (predictedFingerprint)"}}},"FragmentNode":{"type":"object","properties":{"fragmentId":{"type":"integer","format":"int32"},"molecularFormula":{"type":"string","description":"neutral molecular formula of the fragment without adduct"},"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."},"massDeviationDa":{"type":"number","format":"double"},"massDeviationPpm":{"type":"number","format":"double"},"score":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"},"mz":{"type":"number","format":"double"}}},"FragmentationTree":{"type":"object","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","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"}}},"IsotopePatternAnnotation":{"type":"object","properties":{"isotopePattern":{"$ref":"#/components/schemas/BasicSpectrum"},"simulatedPattern":{"$ref":"#/components/schemas/BasicSpectrum"}}},"LipidAnnotation":{"type":"object","properties":{"lipidSpecies":{"type":"string","description":"Predicted lipid species in LIPID MAPS notation.\n NULL if not classified as lipid."},"lipidMapsId":{"type":"string","description":"LIPID MAPS id of the predicted lipid class."},"lipidClassName":{"type":"string","description":"Human-readable name of the predicted lipid class."},"hypotheticalStructure":{"type":"string","description":"Hypothetical molecular structure of the predicted lipid species as SMILES.\n NULL if hypothetical structure not available."},"chainsUnknown":{"type":"boolean","description":"True of the formula composition of the chains could not be determined from the MS/MS."}}},"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","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","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"}}}},"ParentPeak":{"type":"object","description":"Link from annotated fragment peak to its parent fragment peak connected by their neutral loss.","properties":{"parentIdx":{"type":"integer","format":"int32","description":"Index to the parent peak connected by this loss in this particular spectrum"},"parentFragmentId":{"type":"integer","format":"int32","description":"Identifier of the parent fragment connected via this loss. Can be used to map fragments and peaks\n among fragmentation trees and spectra."},"lossFormula":{"type":"string","description":"Molecular formula of the neutral loss that connects these two peaks."}},"required":["lossFormula","parentFragmentId","parentIdx"]},"PeakAnnotation":{"type":"object","properties":{"fragmentId":{"type":"integer","format":"int32","description":"Identifier of the peak/fragment. Can be used to map fragments and peaks\n among fragmentation trees and spectra."},"molecularFormula":{"type":"string","description":"Molecular formula that has been annotated to this peak"},"adduct":{"type":"string","description":"Adduct that has been annotated to this peak"},"exactMass":{"type":"number","format":"double","description":"Exact mass of the annotated molecular formula and adduct"},"massDeviationMz":{"type":"number","format":"double","description":"Absolute mass deviation of the exact mass to the measured peak mass in mDa"},"massDeviationPpm":{"type":"number","format":"double","description":"Relative mass deviation of the exact mass to the measured peak mass in ppm"},"recalibratedMassDeviationMz":{"type":"number","format":"double","description":"Absolute mass deviation of the exact mass to the recalibrated peak mass in mDa"},"recalibratedMassDeviationPpm":{"type":"number","format":"double","description":"Relative mass deviation of the exact mass to the recalibrated peak mass in ppm"},"parentPeak":{"$ref":"#/components/schemas/ParentPeak","description":"Link to the parent peak connected via the neutral loss from the fragmentation tree."},"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)","items":{"type":"integer","format":"int32"}},"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.","items":{"type":"integer","format":"int32"}},"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.","items":{"type":"integer","format":"int32"}},"substructureScore":{"type":"number","format":"float","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."},"hydrogenRearrangements":{"type":"integer","format":"int32","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."}},"required":["fragmentId"]},"SpectrumAnnotation":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula that has been annotated to this spectrum"},"adduct":{"type":"string","description":"Adduct that has been annotated to this spectrum"},"exactMass":{"type":"number","format":"double","description":"Exact mass based on the annotated molecular formula and ionization"},"massDeviationMz":{"type":"number","format":"double","description":"Absolute mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in mDa"},"massDeviationPpm":{"type":"number","format":"double","description":"Relative mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in ppm"},"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."},"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."},"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."},"structureAnnotationScore":{"type":"number","format":"double","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."}}},"StructureCandidate":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string"},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter"},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","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","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double"}}},"StructureCandidateScored":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string"},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter"},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","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","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double"},"rank":{"type":"integer","format":"int32","description":"the overall rank of this candidate among all candidates of this feature"},"csiScore":{"type":"number","format":"double","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"},"tanimotoSimilarity":{"type":"number","format":"double","description":"Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID"},"mcesDistToTopHit":{"type":"number","format":"double","description":"Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list."},"fingerprint":{"$ref":"#/components/schemas/BinaryFingerprint","description":"Array containing the indices of the molecular fingerprint that are available in the structure (1 if present)\n OPTIONAL: needs to be added by parameter"}}},"StoredJobSubmission":{"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","description":"The JobSubmission identified by the name"}},"required":["editable","jobSubmission","name"]},"BioTransformerParameters":{"type":"object","properties":{"cyp450Mode":{"type":"string","default":"COMBINED","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.","enum":["RULE_BASED","CY_PRODUCT","COMBINED"]},"p2Mode":{"type":"string","default":"BT_RULE_BASED","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.","enum":["BT_RULE_BASED","P2_RULE_ONLY","COMBINED_RULES"]},"useDB":{"type":"boolean","default":true,"description":"\"Specify if you want to enable the retrieving from database (HMDB) feature.\""},"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"}}},"required":["bioTransformerSequenceSteps","cyp450Mode","p2Mode"]},"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","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.","properties":{"username":{"type":"string"},"password":{"type":"string"},"refreshToken":{"type":"string"}}},"RunOptField":{"type":"string","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"},"ionization":{"type":"string"},"fragmentation":{"type":"string"},"massAnalyzers":{"type":"array","items":{"type":"string"}},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag"}}},"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","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","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"}}},"AdductNetworkExperimental":{"type":"object","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","properties":{"nodes":{"type":"array","items":{"$ref":"#/components/schemas/AdductNodeExperimental"}},"edges":{"type":"array","items":{"$ref":"#/components/schemas/AdductEdgeExperimental"}}}},"AdductNodeExperimental":{"type":"object","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","properties":{"alignedFeatureId":{"type":"string"},"mz":{"type":"number","format":"double"},"adductAnnotations":{"type":"object","additionalProperties":{"type":"number","format":"double"}}}},"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","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","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"},"index":{"type":"integer","format":"int32"},"from":{"type":"integer","format":"int32"},"to":{"type":"integer","format":"int32"}}},"TraceExperimental":{"type":"object","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","properties":{"id":{"type":"string"},"sampleId":{"type":"string"},"sampleName":{"type":"string"},"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","format":"double","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."},"noiseLevel":{"type":"number","format":"double","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."}}},"TraceSetExperimental":{"type":"object","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","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"}}}},"QuantTableExperimental":{"type":"object","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","properties":{"quantificationMeasure":{"type":"string","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]},"rowType":{"type":"string","enum":["FEATURES","COMPOUNDS"]},"rowIds":{"type":"array","items":{"type":"integer","format":"int64"}},"columnIds":{"type":"array","items":{"type":"integer","format":"int64"}},"rowNames":{"type":"array","items":{"type":"string"}},"columnNames":{"type":"array","items":{"type":"string"}},"values":{"type":"array","items":{"type":"array","items":{"type":"number","format":"double"}}}}},"PagedModelCompound":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"FoldChange":{"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"}},"required":["foldChange","objectId","quantType"]},"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":{"type":"object","properties":{"bestMatch":{"$ref":"#/components/schemas/SpectralLibraryMatch"},"spectralMatchCount":{"type":"integer","format":"int64"},"referenceSpectraCount":{"type":"integer","format":"int32"},"databaseCompoundCount":{"type":"integer","format":"int32"}},"required":["databaseCompoundCount","referenceSpectraCount","spectralMatchCount"]},"PagedModelSpectralLibraryMatch":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"AlignedFeatureQualityExperimental":{"type":"object","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","properties":{"alignedFeatureId":{"type":"string","description":"Id of the feature (aligned over runs) this quality information belongs to."},"overallQuality":{"type":"string","description":"Overall Quality","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.,"}},"required":["alignedFeatureId","categories","overallQuality"]},"Category":{"type":"object","properties":{"categoryName":{"type":"string"},"overallQuality":{"type":"string","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","enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"weight":{"type":"string","enum":["MINOR","MAJOR","CRITICAL"]}}},"AnnotatedMsMsData":{"type":"object","properties":{"mergedMs2":{"$ref":"#/components/schemas/AnnotatedSpectrum"},"ms2Spectra":{"type":"array","items":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}},"required":["mergedMs2","ms2Spectra"]},"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":{"type":"object","properties":{"nightSkyApiVersion":{"type":"string","description":"API version of the SIRIUS Nightsky API"},"siriusVersion":{"type":"string","description":"Version of the SIRIUS application"},"latestSiriusVersion":{"type":"string","description":"Latest available Version of the SIRIUS application"},"latestSiriusLink":{"type":"string","description":"Link to the latest available Version of the SIRIUS application"},"updateAvailable":{"type":"boolean","description":"true if newer SIRIUS version is available"},"siriusLibVersion":{"type":"string","description":"Version of the SIRIUS libraries"},"fingerIdLibVersion":{"type":"string","description":"Version of the CSI:FingerID libraries"},"chemDbVersion":{"type":"string","description":"Version of the Chemical Database available via SIRIUS web services"},"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."},"fingerprintId":{"type":"string","description":"Version of the Molecular Fingerprint used by SIRIUS"},"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"}},"required":["availableILPSolvers","supportedILPSolvers"]},"ConnectionCheck":{"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"}}},"required":["errors","licenseInfo"]},"ConnectionError":{"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"},"serverResponseErrorMessage":{"type":"string"},"error":{"type":"boolean"},"warning":{"type":"boolean"}},"required":["errorKlass","errorType","siriusErrorCode","siriusMessage"]},"LicenseInfo":{"type":"object","properties":{"userEmail":{"type":"string","description":"Email address of the user account this license information belongs to."},"userId":{"type":"string","description":"User ID (uid) of the user account this license information belongs to."},"subscription":{"$ref":"#/components/schemas/Subscription","description":"The active subscription that was used the requested the information"},"consumables":{"$ref":"#/components/schemas/SubscriptionConsumables","description":"Status of the consumable resources of the {@link Subscription Subscription}."},"terms":{"type":"array","items":{"$ref":"#/components/schemas/Term"}}}},"SubscriptionConsumables":{"type":"object","properties":{"pendingJobs":{"type":"integer","format":"int32"},"countedCompounds":{"type":"integer","format":"int32"}}},"Term":{"type":"object","properties":{"name":{"type":"string"},"link":{"type":"string","format":"uri"}}},"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 7da3e962..2e38d3b6 100644 --- a/client-api_python/generated/.openapi-generator/FILES +++ b/client-api_python/generated/.openapi-generator/FILES @@ -2,14 +2,17 @@ PySirius/__init__.py PySirius/api/__init__.py PySirius/api/actuator_api.py +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 PySirius/api/projects_api.py +PySirius/api/runs_api.py PySirius/api/searchable_databases_api.py +PySirius/api/tags_api.py PySirius/api_client.py PySirius/api_response.py PySirius/configuration.py @@ -20,16 +23,21 @@ PySirius/models/account_info.py PySirius/models/adduct_edge_experimental.py PySirius/models/adduct_network_experimental.py PySirius/models/adduct_node_experimental.py +PySirius/models/aggregation_type.py PySirius/models/aligned_feature.py PySirius/models/aligned_feature_opt_field.py PySirius/models/aligned_feature_quality_experimental.py +PySirius/models/allowed_features.py PySirius/models/annotated_ms_ms_data.py PySirius/models/annotated_peak.py PySirius/models/annotated_spectrum.py +PySirius/models/api_version.py PySirius/models/axes.py PySirius/models/background_computations_state_event.py PySirius/models/basic_spectrum.py PySirius/models/binary_fingerprint.py +PySirius/models/bio_transformer_parameters.py +PySirius/models/bio_transformer_sequence_step.py PySirius/models/canopus.py PySirius/models/canopus_prediction.py PySirius/models/category.py @@ -49,6 +57,7 @@ PySirius/models/consensus_annotations_csi.py PySirius/models/consensus_annotations_de_novo.py PySirius/models/consensus_criterion_csi.py PySirius/models/consensus_criterion_de_novo.py +PySirius/models/cyp450_mode.py PySirius/models/data_import_event.py PySirius/models/data_quality.py PySirius/models/db_link.py @@ -56,11 +65,11 @@ PySirius/models/deviation.py PySirius/models/feature_annotations.py PySirius/models/feature_import.py PySirius/models/fingerprint_prediction.py +PySirius/models/fold_change.py 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 @@ -76,18 +85,22 @@ PySirius/models/lcms_submission_parameters.py PySirius/models/license_info.py PySirius/models/lipid_annotation.py PySirius/models/loss_edge.py +PySirius/models/metabolic_transformation.py PySirius/models/ms_data.py PySirius/models/ms_novelist.py +PySirius/models/p2_mode.py PySirius/models/page_metadata.py PySirius/models/paged_model_aligned_feature.py PySirius/models/paged_model_compound.py PySirius/models/paged_model_formula_candidate.py PySirius/models/paged_model_job.py +PySirius/models/paged_model_run.py PySirius/models/paged_model_spectral_library_match.py PySirius/models/paged_model_structure_candidate_formula.py PySirius/models/paged_model_structure_candidate_scored.py PySirius/models/parent_peak.py PySirius/models/peak_annotation.py +PySirius/models/peak_pair.py PySirius/models/project_change_event.py PySirius/models/project_event_type.py PySirius/models/project_info.py @@ -95,12 +108,16 @@ PySirius/models/project_info_opt_field.py PySirius/models/project_type.py PySirius/models/quality_item.py PySirius/models/quality_weight.py -PySirius/models/quantification_column_type.py -PySirius/models/quantification_measure.py -PySirius/models/quantification_row_type.py -PySirius/models/quantification_table_experimental.py +PySirius/models/quant_measure.py +PySirius/models/quant_row_type.py +PySirius/models/quant_table_experimental.py +PySirius/models/run.py +PySirius/models/run_opt_field.py +PySirius/models/sample_type_fold_change_request.py PySirius/models/searchable_database.py PySirius/models/searchable_database_parameters.py +PySirius/models/security_context.py +PySirius/models/security_context_principal.py PySirius/models/simple_peak.py PySirius/models/sirius.py PySirius/models/solver.py @@ -108,8 +125,12 @@ PySirius/models/spectral_library_match.py PySirius/models/spectral_library_match_opt_field.py PySirius/models/spectral_library_match_summary.py PySirius/models/spectral_library_search.py +PySirius/models/spectral_match_type.py PySirius/models/spectral_matching_type.py PySirius/models/spectrum_annotation.py +PySirius/models/spectrum_type.py +PySirius/models/statistics_table.py +PySirius/models/statistics_type.py PySirius/models/stored_job_submission.py PySirius/models/structure_candidate.py PySirius/models/structure_candidate_formula.py @@ -118,6 +139,10 @@ PySirius/models/structure_candidate_scored.py PySirius/models/structure_db_search.py PySirius/models/subscription.py PySirius/models/subscription_consumables.py +PySirius/models/tag.py +PySirius/models/tag_definition.py +PySirius/models/tag_definition_import.py +PySirius/models/tag_group.py PySirius/models/term.py PySirius/models/timeout.py PySirius/models/trace_annotation_experimental.py @@ -125,9 +150,13 @@ PySirius/models/trace_annotation_type_experimental.py PySirius/models/trace_experimental.py PySirius/models/trace_set_experimental.py PySirius/models/use_heuristic.py +PySirius/models/value_type.py +PySirius/models/web_server_namespace.py PySirius/models/zodiac.py +PySirius/models/zodiac_analogue_nodes.py PySirius/models/zodiac_edge_filter_thresholds.py PySirius/models/zodiac_epochs.py +PySirius/models/zodiac_library_scoring.py PySirius/py.typed PySirius/rest.py README.md @@ -137,16 +166,21 @@ docs/ActuatorApi.md docs/AdductEdgeExperimental.md docs/AdductNetworkExperimental.md docs/AdductNodeExperimental.md +docs/AggregationType.md docs/AlignedFeature.md docs/AlignedFeatureOptField.md docs/AlignedFeatureQualityExperimental.md +docs/AllowedFeatures.md docs/AnnotatedMsMsData.md docs/AnnotatedPeak.md docs/AnnotatedSpectrum.md +docs/ApiVersion.md docs/Axes.md docs/BackgroundComputationsStateEvent.md docs/BasicSpectrum.md docs/BinaryFingerprint.md +docs/BioTransformerParameters.md +docs/BioTransformerSequenceStep.md docs/Canopus.md docs/CanopusPrediction.md docs/Category.md @@ -156,6 +190,7 @@ docs/CompoundClassType.md docs/CompoundClasses.md docs/CompoundImport.md docs/CompoundOptField.md +docs/CompoundStatisticsApi.md docs/CompoundsApi.md docs/ComputedSubtools.md docs/ConfidenceMode.md @@ -167,20 +202,21 @@ docs/ConsensusAnnotationsCSI.md docs/ConsensusAnnotationsDeNovo.md docs/ConsensusCriterionCSI.md docs/ConsensusCriterionDeNovo.md +docs/Cyp450Mode.md docs/DBLink.md docs/DataImportEvent.md docs/DataQuality.md docs/Deviation.md docs/FeatureAnnotations.md docs/FeatureImport.md +docs/FeatureStatisticsApi.md docs/FeaturesApi.md docs/FingerprintPrediction.md +docs/FoldChange.md 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 @@ -199,18 +235,22 @@ docs/LicenseInfo.md docs/LipidAnnotation.md docs/LoginAndAccountApi.md docs/LossEdge.md +docs/MetabolicTransformation.md docs/MsData.md docs/MsNovelist.md +docs/P2Mode.md docs/PageMetadata.md docs/PagedModelAlignedFeature.md docs/PagedModelCompound.md docs/PagedModelFormulaCandidate.md docs/PagedModelJob.md +docs/PagedModelRun.md docs/PagedModelSpectralLibraryMatch.md docs/PagedModelStructureCandidateFormula.md docs/PagedModelStructureCandidateScored.md docs/ParentPeak.md docs/PeakAnnotation.md +docs/PeakPair.md docs/ProjectChangeEvent.md docs/ProjectEventType.md docs/ProjectInfo.md @@ -219,13 +259,18 @@ docs/ProjectType.md docs/ProjectsApi.md docs/QualityItem.md docs/QualityWeight.md -docs/QuantificationColumnType.md -docs/QuantificationMeasure.md -docs/QuantificationRowType.md -docs/QuantificationTableExperimental.md +docs/QuantMeasure.md +docs/QuantRowType.md +docs/QuantTableExperimental.md +docs/Run.md +docs/RunOptField.md +docs/RunsApi.md +docs/SampleTypeFoldChangeRequest.md docs/SearchableDatabase.md docs/SearchableDatabaseParameters.md docs/SearchableDatabasesApi.md +docs/SecurityContext.md +docs/SecurityContextPrincipal.md docs/SimplePeak.md docs/Sirius.md docs/Solver.md @@ -233,8 +278,12 @@ docs/SpectralLibraryMatch.md docs/SpectralLibraryMatchOptField.md docs/SpectralLibraryMatchSummary.md docs/SpectralLibrarySearch.md +docs/SpectralMatchType.md docs/SpectralMatchingType.md docs/SpectrumAnnotation.md +docs/SpectrumType.md +docs/StatisticsTable.md +docs/StatisticsType.md docs/StoredJobSubmission.md docs/StructureCandidate.md docs/StructureCandidateFormula.md @@ -243,6 +292,11 @@ docs/StructureCandidateScored.md docs/StructureDbSearch.md docs/Subscription.md docs/SubscriptionConsumables.md +docs/Tag.md +docs/TagDefinition.md +docs/TagDefinitionImport.md +docs/TagGroup.md +docs/TagsApi.md docs/Term.md docs/Timeout.md docs/TraceAnnotationExperimental.md @@ -250,9 +304,13 @@ docs/TraceAnnotationTypeExperimental.md docs/TraceExperimental.md docs/TraceSetExperimental.md docs/UseHeuristic.md +docs/ValueType.md +docs/WebServerNamespace.md docs/Zodiac.md +docs/ZodiacAnalogueNodes.md docs/ZodiacEdgeFilterThresholds.md docs/ZodiacEpochs.md +docs/ZodiacLibraryScoring.md pyproject.toml requirements.txt setup.cfg diff --git a/client-api_python/generated/PySirius/__init__.py b/client-api_python/generated/PySirius/__init__.py index 0e44d372..fe9c6e25 100644 --- a/client-api_python/generated/PySirius/__init__.py +++ b/client-api_python/generated/PySirius/__init__.py @@ -16,14 +16,17 @@ # import apis into sdk package from PySirius.api.actuator_api import ActuatorApi +from PySirius.api.compound_statistics_api import CompoundStatisticsApi 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 from PySirius.api.projects_api import ProjectsApi +from PySirius.api.runs_api import RunsApi from PySirius.api.searchable_databases_api import SearchableDatabasesApi +from PySirius.api.tags_api import TagsApi # import ApiClient from PySirius.api_response import ApiResponse @@ -42,16 +45,21 @@ from PySirius.models.adduct_edge_experimental import AdductEdgeExperimental from PySirius.models.adduct_network_experimental import AdductNetworkExperimental from PySirius.models.adduct_node_experimental import AdductNodeExperimental +from PySirius.models.aggregation_type import AggregationType from PySirius.models.aligned_feature import AlignedFeature from PySirius.models.aligned_feature_opt_field import AlignedFeatureOptField from PySirius.models.aligned_feature_quality_experimental import AlignedFeatureQualityExperimental +from PySirius.models.allowed_features import AllowedFeatures from PySirius.models.annotated_ms_ms_data import AnnotatedMsMsData from PySirius.models.annotated_peak import AnnotatedPeak from PySirius.models.annotated_spectrum import AnnotatedSpectrum +from PySirius.models.api_version import ApiVersion from PySirius.models.axes import Axes from PySirius.models.background_computations_state_event import BackgroundComputationsStateEvent from PySirius.models.basic_spectrum import BasicSpectrum from PySirius.models.binary_fingerprint import BinaryFingerprint +from PySirius.models.bio_transformer_parameters import BioTransformerParameters +from PySirius.models.bio_transformer_sequence_step import BioTransformerSequenceStep from PySirius.models.canopus import Canopus from PySirius.models.canopus_prediction import CanopusPrediction from PySirius.models.category import Category @@ -71,6 +79,7 @@ from PySirius.models.consensus_annotations_de_novo import ConsensusAnnotationsDeNovo from PySirius.models.consensus_criterion_csi import ConsensusCriterionCSI from PySirius.models.consensus_criterion_de_novo import ConsensusCriterionDeNovo +from PySirius.models.cyp450_mode import Cyp450Mode from PySirius.models.db_link import DBLink from PySirius.models.data_import_event import DataImportEvent from PySirius.models.data_quality import DataQuality @@ -78,11 +87,11 @@ from PySirius.models.feature_annotations import FeatureAnnotations from PySirius.models.feature_import import FeatureImport from PySirius.models.fingerprint_prediction import FingerprintPrediction +from PySirius.models.fold_change import FoldChange from PySirius.models.formula_candidate import FormulaCandidate 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 @@ -98,18 +107,22 @@ from PySirius.models.license_info import LicenseInfo from PySirius.models.lipid_annotation import LipidAnnotation from PySirius.models.loss_edge import LossEdge +from PySirius.models.metabolic_transformation import MetabolicTransformation from PySirius.models.ms_data import MsData from PySirius.models.ms_novelist import MsNovelist +from PySirius.models.p2_mode import P2Mode from PySirius.models.page_metadata import PageMetadata from PySirius.models.paged_model_aligned_feature import PagedModelAlignedFeature from PySirius.models.paged_model_compound import PagedModelCompound from PySirius.models.paged_model_formula_candidate import PagedModelFormulaCandidate from PySirius.models.paged_model_job import PagedModelJob +from PySirius.models.paged_model_run import PagedModelRun from PySirius.models.paged_model_spectral_library_match import PagedModelSpectralLibraryMatch from PySirius.models.paged_model_structure_candidate_formula import PagedModelStructureCandidateFormula from PySirius.models.paged_model_structure_candidate_scored import PagedModelStructureCandidateScored from PySirius.models.parent_peak import ParentPeak from PySirius.models.peak_annotation import PeakAnnotation +from PySirius.models.peak_pair import PeakPair from PySirius.models.project_change_event import ProjectChangeEvent from PySirius.models.project_event_type import ProjectEventType from PySirius.models.project_info import ProjectInfo @@ -117,12 +130,16 @@ from PySirius.models.project_type import ProjectType from PySirius.models.quality_item import QualityItem from PySirius.models.quality_weight import QualityWeight -from PySirius.models.quantification_column_type import QuantificationColumnType -from PySirius.models.quantification_measure import QuantificationMeasure -from PySirius.models.quantification_row_type import QuantificationRowType -from PySirius.models.quantification_table_experimental import QuantificationTableExperimental +from PySirius.models.quant_measure import QuantMeasure +from PySirius.models.quant_row_type import QuantRowType +from PySirius.models.quant_table_experimental import QuantTableExperimental +from PySirius.models.run import Run +from PySirius.models.run_opt_field import RunOptField +from PySirius.models.sample_type_fold_change_request import SampleTypeFoldChangeRequest from PySirius.models.searchable_database import SearchableDatabase from PySirius.models.searchable_database_parameters import SearchableDatabaseParameters +from PySirius.models.security_context import SecurityContext +from PySirius.models.security_context_principal import SecurityContextPrincipal from PySirius.models.simple_peak import SimplePeak from PySirius.models.sirius import Sirius from PySirius.models.solver import Solver @@ -130,8 +147,12 @@ from PySirius.models.spectral_library_match_opt_field import SpectralLibraryMatchOptField from PySirius.models.spectral_library_match_summary import SpectralLibraryMatchSummary from PySirius.models.spectral_library_search import SpectralLibrarySearch +from PySirius.models.spectral_match_type import SpectralMatchType from PySirius.models.spectral_matching_type import SpectralMatchingType from PySirius.models.spectrum_annotation import SpectrumAnnotation +from PySirius.models.spectrum_type import SpectrumType +from PySirius.models.statistics_table import StatisticsTable +from PySirius.models.statistics_type import StatisticsType from PySirius.models.stored_job_submission import StoredJobSubmission from PySirius.models.structure_candidate import StructureCandidate from PySirius.models.structure_candidate_formula import StructureCandidateFormula @@ -140,6 +161,10 @@ from PySirius.models.structure_db_search import StructureDbSearch from PySirius.models.subscription import Subscription from PySirius.models.subscription_consumables import SubscriptionConsumables +from PySirius.models.tag import Tag +from PySirius.models.tag_definition import TagDefinition +from PySirius.models.tag_definition_import import TagDefinitionImport +from PySirius.models.tag_group import TagGroup from PySirius.models.term import Term from PySirius.models.timeout import Timeout from PySirius.models.trace_annotation_experimental import TraceAnnotationExperimental @@ -147,8 +172,12 @@ from PySirius.models.trace_experimental import TraceExperimental from PySirius.models.trace_set_experimental import TraceSetExperimental from PySirius.models.use_heuristic import UseHeuristic +from PySirius.models.value_type import ValueType +from PySirius.models.web_server_namespace import WebServerNamespace from PySirius.models.zodiac import Zodiac +from PySirius.models.zodiac_analogue_nodes import ZodiacAnalogueNodes from PySirius.models.zodiac_edge_filter_thresholds import ZodiacEdgeFilterThresholds from PySirius.models.zodiac_epochs import ZodiacEpochs +from PySirius.models.zodiac_library_scoring import ZodiacLibraryScoring from PySirius.sirius_api import PySiriusAPI from PySirius.sirius import SiriusSDK diff --git a/client-api_python/generated/PySirius/api/__init__.py b/client-api_python/generated/PySirius/api/__init__.py index d9129a5a..1c12f236 100644 --- a/client-api_python/generated/PySirius/api/__init__.py +++ b/client-api_python/generated/PySirius/api/__init__.py @@ -2,12 +2,15 @@ # import apis into api package from PySirius.api.actuator_api import ActuatorApi +from PySirius.api.compound_statistics_api import CompoundStatisticsApi 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 from PySirius.api.projects_api import ProjectsApi +from PySirius.api.runs_api import RunsApi from PySirius.api.searchable_databases_api import SearchableDatabasesApi +from PySirius.api.tags_api import TagsApi diff --git a/client-api_python/generated/PySirius/api/actuator_api.py b/client-api_python/generated/PySirius/api/actuator_api.py index 8fe0602e..89891aab 100644 --- a/client-api_python/generated/PySirius/api/actuator_api.py +++ b/client-api_python/generated/PySirius/api/actuator_api.py @@ -247,8 +247,8 @@ def _health_serialize( _header_params['Accept'] = self.api_client.select_header_accept( [ 'application/vnd.spring-boot.actuator.v3+json', - 'application/json', - 'application/vnd.spring-boot.actuator.v2+json' + 'application/vnd.spring-boot.actuator.v2+json', + 'application/json' ] ) @@ -290,7 +290,7 @@ def shutdown( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> object: + ) -> None: """Actuator web endpoint 'shutdown' @@ -324,7 +324,8 @@ def shutdown( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "object", + '204': None, + '400': None, } response_data = self.api_client.call_api( *_param, @@ -352,7 +353,7 @@ def shutdown_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[object]: + ) -> ApiResponse[None]: """Actuator web endpoint 'shutdown' @@ -386,7 +387,8 @@ def shutdown_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "object", + '204': None, + '400': None, } response_data = self.api_client.call_api( *_param, @@ -448,7 +450,8 @@ def shutdown_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "object", + '204': None, + '400': None, } response_data = self.api_client.call_api( *_param, @@ -484,14 +487,6 @@ def _shutdown_serialize( # process the body parameter - # set the HTTP header `Accept` - _header_params['Accept'] = self.api_client.select_header_accept( - [ - 'application/vnd.spring-boot.actuator.v3+json', - 'application/json', - 'application/vnd.spring-boot.actuator.v2+json' - ] - ) # authentication setting diff --git a/client-api_python/generated/PySirius/api/compound_statistics_api.py b/client-api_python/generated/PySirius/api/compound_statistics_api.py new file mode 100644 index 00000000..3f4ec853 --- /dev/null +++ b/client-api_python/generated/PySirius/api/compound_statistics_api.py @@ -0,0 +1,1267 @@ +# 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, StrictStr +from typing import List, Optional +from typing_extensions import Annotated +from PySirius.models.aggregation_type import AggregationType +from PySirius.models.fold_change import FoldChange +from PySirius.models.job import Job +from PySirius.models.job_opt_field import JobOptField +from PySirius.models.quant_measure import QuantMeasure +from PySirius.models.statistics_table import StatisticsTable + +from PySirius.api_client import ApiClient, RequestSerialized +from PySirius.api_response import ApiResponse +from PySirius.rest import RESTResponseType + + +class CompoundStatisticsApi: + """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 compute_compound_fold_changes_experimental( + self, + project_id: Annotated[StrictStr, Field(description="project-space to compute the fold change in.")], + left_group_name: Annotated[StrictStr, Field(description="name of the left tag group.")], + right_group_name: Annotated[StrictStr, Field(description="name of the right tag group.")], + aggregation: Annotated[Optional[AggregationType], Field(description="aggregation type.")] = None, + quantification: Annotated[Optional[QuantMeasure], Field(description="quantification type.")] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="job opt fields.")] = 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, + ) -> Job: + """[EXPERIMENTAL] Compute the fold change between two groups of runs + + [EXPERIMENTAL] Compute the fold change between two groups of runs.
The runs need to be tagged and grouped.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to compute the fold change in. (required) + :type project_id: str + :param left_group_name: name of the left tag group. (required) + :type left_group_name: str + :param right_group_name: name of the right tag group. (required) + :type right_group_name: str + :param aggregation: aggregation type. + :type aggregation: AggregationType + :param quantification: quantification type. + :type quantification: QuantMeasure + :param opt_fields: job opt fields. + :type opt_fields: List[JobOptField] + :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._compute_compound_fold_changes_experimental_serialize( + project_id=project_id, + left_group_name=left_group_name, + right_group_name=right_group_name, + aggregation=aggregation, + quantification=quantification, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "Job", + } + 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 compute_compound_fold_changes_experimental_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to compute the fold change in.")], + left_group_name: Annotated[StrictStr, Field(description="name of the left tag group.")], + right_group_name: Annotated[StrictStr, Field(description="name of the right tag group.")], + aggregation: Annotated[Optional[AggregationType], Field(description="aggregation type.")] = None, + quantification: Annotated[Optional[QuantMeasure], Field(description="quantification type.")] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="job opt fields.")] = 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[Job]: + """[EXPERIMENTAL] Compute the fold change between two groups of runs + + [EXPERIMENTAL] Compute the fold change between two groups of runs.
The runs need to be tagged and grouped.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to compute the fold change in. (required) + :type project_id: str + :param left_group_name: name of the left tag group. (required) + :type left_group_name: str + :param right_group_name: name of the right tag group. (required) + :type right_group_name: str + :param aggregation: aggregation type. + :type aggregation: AggregationType + :param quantification: quantification type. + :type quantification: QuantMeasure + :param opt_fields: job opt fields. + :type opt_fields: List[JobOptField] + :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._compute_compound_fold_changes_experimental_serialize( + project_id=project_id, + left_group_name=left_group_name, + right_group_name=right_group_name, + aggregation=aggregation, + quantification=quantification, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "Job", + } + 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 compute_compound_fold_changes_experimental_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to compute the fold change in.")], + left_group_name: Annotated[StrictStr, Field(description="name of the left tag group.")], + right_group_name: Annotated[StrictStr, Field(description="name of the right tag group.")], + aggregation: Annotated[Optional[AggregationType], Field(description="aggregation type.")] = None, + quantification: Annotated[Optional[QuantMeasure], Field(description="quantification type.")] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="job opt fields.")] = 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: + """[EXPERIMENTAL] Compute the fold change between two groups of runs + + [EXPERIMENTAL] Compute the fold change between two groups of runs.
The runs need to be tagged and grouped.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to compute the fold change in. (required) + :type project_id: str + :param left_group_name: name of the left tag group. (required) + :type left_group_name: str + :param right_group_name: name of the right tag group. (required) + :type right_group_name: str + :param aggregation: aggregation type. + :type aggregation: AggregationType + :param quantification: quantification type. + :type quantification: QuantMeasure + :param opt_fields: job opt fields. + :type opt_fields: List[JobOptField] + :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._compute_compound_fold_changes_experimental_serialize( + project_id=project_id, + left_group_name=left_group_name, + right_group_name=right_group_name, + aggregation=aggregation, + quantification=quantification, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "Job", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _compute_compound_fold_changes_experimental_serialize( + self, + project_id, + left_group_name, + right_group_name, + aggregation, + quantification, + opt_fields, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + 'optFields': 'multi', + } + + _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, str] = {} + _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 left_group_name is not None: + + _query_params.append(('leftGroupName', left_group_name)) + + if right_group_name is not None: + + _query_params.append(('rightGroupName', right_group_name)) + + if aggregation is not None: + + _query_params.append(('aggregation', aggregation.value)) + + if quantification is not None: + + _query_params.append(('quantification', quantification.value)) + + if opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='PUT', + resource_path='/api/projects/{projectId}/compounds/statistics/foldchange/compute', + 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 delete_compound_fold_changes_experimental( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + left_group_name: Annotated[StrictStr, Field(description="name of the left group.")], + right_group_name: Annotated[StrictStr, Field(description="name of the right group.")], + aggregation: Optional[AggregationType] = None, + quantification: Optional[QuantMeasure] = 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, + ) -> None: + """[EXPERIMENTAL] Delete fold changes + + [EXPERIMENTAL] Delete fold changes.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param left_group_name: name of the left group. (required) + :type left_group_name: str + :param right_group_name: name of the right group. (required) + :type right_group_name: str + :param aggregation: + :type aggregation: AggregationType + :param quantification: + :type quantification: QuantMeasure + :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._delete_compound_fold_changes_experimental_serialize( + project_id=project_id, + left_group_name=left_group_name, + right_group_name=right_group_name, + aggregation=aggregation, + quantification=quantification, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': 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 delete_compound_fold_changes_experimental_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + left_group_name: Annotated[StrictStr, Field(description="name of the left group.")], + right_group_name: Annotated[StrictStr, Field(description="name of the right group.")], + aggregation: Optional[AggregationType] = None, + quantification: Optional[QuantMeasure] = 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[None]: + """[EXPERIMENTAL] Delete fold changes + + [EXPERIMENTAL] Delete fold changes.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param left_group_name: name of the left group. (required) + :type left_group_name: str + :param right_group_name: name of the right group. (required) + :type right_group_name: str + :param aggregation: + :type aggregation: AggregationType + :param quantification: + :type quantification: QuantMeasure + :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._delete_compound_fold_changes_experimental_serialize( + project_id=project_id, + left_group_name=left_group_name, + right_group_name=right_group_name, + aggregation=aggregation, + quantification=quantification, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': 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 delete_compound_fold_changes_experimental_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + left_group_name: Annotated[StrictStr, Field(description="name of the left group.")], + right_group_name: Annotated[StrictStr, Field(description="name of the right group.")], + aggregation: Optional[AggregationType] = None, + quantification: Optional[QuantMeasure] = 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: + """[EXPERIMENTAL] Delete fold changes + + [EXPERIMENTAL] Delete fold changes.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param left_group_name: name of the left group. (required) + :type left_group_name: str + :param right_group_name: name of the right group. (required) + :type right_group_name: str + :param aggregation: + :type aggregation: AggregationType + :param quantification: + :type quantification: QuantMeasure + :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._delete_compound_fold_changes_experimental_serialize( + project_id=project_id, + left_group_name=left_group_name, + right_group_name=right_group_name, + aggregation=aggregation, + quantification=quantification, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': None, + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _delete_compound_fold_changes_experimental_serialize( + self, + project_id, + left_group_name, + right_group_name, + aggregation, + quantification, + _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, str] = {} + _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 left_group_name is not None: + + _query_params.append(('leftGroupName', left_group_name)) + + if right_group_name is not None: + + _query_params.append(('rightGroupName', right_group_name)) + + if aggregation is not None: + + _query_params.append(('aggregation', aggregation.value)) + + if quantification is not None: + + _query_params.append(('quantification', quantification.value)) + + # 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='DELETE', + resource_path='/api/projects/{projectId}/compounds/statistics/foldchanges', + 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_compound_fold_change_table_experimental( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aggregation: Annotated[Optional[AggregationType], Field(description="aggregation type.")] = None, + quantification: Annotated[Optional[QuantMeasure], Field(description="quantification type.")] = 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, + ) -> StatisticsTable: + """[EXPERIMENTAL] Get table of all fold changes in the project space + + [EXPERIMENTAL] Get table of all fold changes in the project space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aggregation: aggregation type. + :type aggregation: AggregationType + :param quantification: quantification type. + :type quantification: QuantMeasure + :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_compound_fold_change_table_experimental_serialize( + project_id=project_id, + aggregation=aggregation, + quantification=quantification, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "StatisticsTable", + } + 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_compound_fold_change_table_experimental_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aggregation: Annotated[Optional[AggregationType], Field(description="aggregation type.")] = None, + quantification: Annotated[Optional[QuantMeasure], Field(description="quantification type.")] = 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[StatisticsTable]: + """[EXPERIMENTAL] Get table of all fold changes in the project space + + [EXPERIMENTAL] Get table of all fold changes in the project space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aggregation: aggregation type. + :type aggregation: AggregationType + :param quantification: quantification type. + :type quantification: QuantMeasure + :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_compound_fold_change_table_experimental_serialize( + project_id=project_id, + aggregation=aggregation, + quantification=quantification, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "StatisticsTable", + } + 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_compound_fold_change_table_experimental_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aggregation: Annotated[Optional[AggregationType], Field(description="aggregation type.")] = None, + quantification: Annotated[Optional[QuantMeasure], Field(description="quantification type.")] = 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: + """[EXPERIMENTAL] Get table of all fold changes in the project space + + [EXPERIMENTAL] Get table of all fold changes in the project space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aggregation: aggregation type. + :type aggregation: AggregationType + :param quantification: quantification type. + :type quantification: QuantMeasure + :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_compound_fold_change_table_experimental_serialize( + project_id=project_id, + aggregation=aggregation, + quantification=quantification, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "StatisticsTable", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_compound_fold_change_table_experimental_serialize( + self, + project_id, + aggregation, + quantification, + _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, str] = {} + _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 aggregation is not None: + + _query_params.append(('aggregation', aggregation.value)) + + if quantification is not None: + + _query_params.append(('quantification', quantification.value)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/compounds/statistics/foldchanges/stats-table', + 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_fold_changes_by_compound_experimental( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + object_id: Annotated[StrictStr, Field(description="id of the object the fold changes are assigned 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, + ) -> List[FoldChange]: + """[EXPERIMENTAL] List all fold changes that are associated with an object + + [EXPERIMENTAL] List all fold changes that are associated with an object.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param object_id: id of the object the fold changes are assigned to. (required) + :type object_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._get_fold_changes_by_compound_experimental_serialize( + project_id=project_id, + object_id=object_id, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[FoldChange]", + } + 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_fold_changes_by_compound_experimental_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + object_id: Annotated[StrictStr, Field(description="id of the object the fold changes are assigned 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[List[FoldChange]]: + """[EXPERIMENTAL] List all fold changes that are associated with an object + + [EXPERIMENTAL] List all fold changes that are associated with an object.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param object_id: id of the object the fold changes are assigned to. (required) + :type object_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._get_fold_changes_by_compound_experimental_serialize( + project_id=project_id, + object_id=object_id, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[FoldChange]", + } + 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_fold_changes_by_compound_experimental_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + object_id: Annotated[StrictStr, Field(description="id of the object the fold changes are assigned 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: + """[EXPERIMENTAL] List all fold changes that are associated with an object + + [EXPERIMENTAL] List all fold changes that are associated with an object.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param object_id: id of the object the fold changes are assigned to. (required) + :type object_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._get_fold_changes_by_compound_experimental_serialize( + project_id=project_id, + object_id=object_id, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[FoldChange]", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_fold_changes_by_compound_experimental_serialize( + self, + project_id, + object_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, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + if object_id is not None: + _path_params['objectId'] = object_id + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/compounds/statistics/foldchanges/{objectId}', + 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/api/compounds_api.py b/client-api_python/generated/PySirius/api/compounds_api.py index 3bc9dee4..bd138c8a 100644 --- a/client-api_python/generated/PySirius/api/compounds_api.py +++ b/client-api_python/generated/PySirius/api/compounds_api.py @@ -14,7 +14,7 @@ from typing import Any, Dict, List, Optional, Tuple, Union from typing_extensions import Annotated -from pydantic import Field, StrictStr +from pydantic import Field, StrictBool, StrictStr from typing import List, Optional from typing_extensions import Annotated from PySirius.models.aligned_feature_opt_field import AlignedFeatureOptField @@ -23,6 +23,9 @@ from PySirius.models.compound_opt_field import CompoundOptField from PySirius.models.instrument_profile import InstrumentProfile from PySirius.models.paged_model_compound import PagedModelCompound +from PySirius.models.quant_measure import QuantMeasure +from PySirius.models.quant_table_experimental import QuantTableExperimental +from PySirius.models.tag import Tag from PySirius.models.trace_set_experimental import TraceSetExperimental from PySirius.api_client import ApiClient, RequestSerialized @@ -49,8 +52,8 @@ def add_compounds( project_id: Annotated[StrictStr, Field(description="project-space to import into.")], compound_import: Annotated[List[CompoundImport], Field(description="the compound data to be imported")], profile: Annotated[Optional[InstrumentProfile], Field(description="profile describing the instrument used to measure the data. Used to merge spectra.")] = None, - opt_fields: Annotated[Optional[List[Optional[CompoundOptField]]], Field(description="set of optional fields to be included. Use 'none' to override defaults.")] = None, - opt_fields_features: Annotated[Optional[List[Optional[AlignedFeatureOptField]]], Field(description="set of optional fields of the nested features to be included. Use 'none' to override defaults.")] = None, + opt_fields: Annotated[Optional[List[CompoundOptField]], Field(description="set of optional fields to be included. Use 'none' to override defaults.")] = None, + opt_fields_features: Annotated[Optional[List[AlignedFeatureOptField]], Field(description="set of optional fields of the nested features to be included. Use 'none' to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -132,8 +135,8 @@ def add_compounds_with_http_info( project_id: Annotated[StrictStr, Field(description="project-space to import into.")], compound_import: Annotated[List[CompoundImport], Field(description="the compound data to be imported")], profile: Annotated[Optional[InstrumentProfile], Field(description="profile describing the instrument used to measure the data. Used to merge spectra.")] = None, - opt_fields: Annotated[Optional[List[Optional[CompoundOptField]]], Field(description="set of optional fields to be included. Use 'none' to override defaults.")] = None, - opt_fields_features: Annotated[Optional[List[Optional[AlignedFeatureOptField]]], Field(description="set of optional fields of the nested features to be included. Use 'none' to override defaults.")] = None, + opt_fields: Annotated[Optional[List[CompoundOptField]], Field(description="set of optional fields to be included. Use 'none' to override defaults.")] = None, + opt_fields_features: Annotated[Optional[List[AlignedFeatureOptField]], Field(description="set of optional fields of the nested features to be included. Use 'none' to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -215,8 +218,8 @@ def add_compounds_without_preload_content( project_id: Annotated[StrictStr, Field(description="project-space to import into.")], compound_import: Annotated[List[CompoundImport], Field(description="the compound data to be imported")], profile: Annotated[Optional[InstrumentProfile], Field(description="profile describing the instrument used to measure the data. Used to merge spectra.")] = None, - opt_fields: Annotated[Optional[List[Optional[CompoundOptField]]], Field(description="set of optional fields to be included. Use 'none' to override defaults.")] = None, - opt_fields_features: Annotated[Optional[List[Optional[AlignedFeatureOptField]]], Field(description="set of optional fields of the nested features to be included. Use 'none' to override defaults.")] = None, + opt_fields: Annotated[Optional[List[CompoundOptField]], Field(description="set of optional fields to be included. Use 'none' to override defaults.")] = None, + opt_fields_features: Annotated[Optional[List[AlignedFeatureOptField]], Field(description="set of optional fields of the nested features to be included. Use 'none' to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -383,10 +386,11 @@ def _add_compounds_serialize( @validate_call - def delete_compound( + def add_tags_to_compound_experimental( self, - project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], - compound_id: Annotated[StrictStr, Field(description="identifier of the compound to delete.")], + project_id: Annotated[StrictStr, Field(description="project-space to add to.")], + compound_id: Annotated[StrictStr, Field(description="compound (group of ion identities) to add tags to.")], + tag: Annotated[List[Tag], Field(description="tags to add.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -399,15 +403,17 @@ def delete_compound( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> None: - """Delete compound (group of ion identities) with the given identifier (and the included features) from the specified project-space. + ) -> List[Tag]: + """[EXPERIMENTAL] Tags with the same name will be overwritten - Delete compound (group of ion identities) with the given identifier (and the included features) from the specified project-space. + [EXPERIMENTAL] Tags with the same name will be overwritten.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. - :param project_id: project-space to delete from. (required) + :param project_id: project-space to add to. (required) :type project_id: str - :param compound_id: identifier of the compound to delete. (required) + :param compound_id: compound (group of ion identities) to add tags to. (required) :type compound_id: str + :param tag: tags to add. (required) + :type tag: List[Tag] :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 @@ -430,9 +436,10 @@ def delete_compound( :return: Returns the result object. """ # noqa: E501 - _param = self._delete_compound_serialize( + _param = self._add_tags_to_compound_experimental_serialize( project_id=project_id, compound_id=compound_id, + tag=tag, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -440,7 +447,7 @@ def delete_compound( ) _response_types_map: Dict[str, Optional[str]] = { - '200': None, + '200': "List[Tag]", } response_data = self.api_client.call_api( *_param, @@ -454,10 +461,11 @@ def delete_compound( @validate_call - def delete_compound_with_http_info( + def add_tags_to_compound_experimental_with_http_info( self, - project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], - compound_id: Annotated[StrictStr, Field(description="identifier of the compound to delete.")], + project_id: Annotated[StrictStr, Field(description="project-space to add to.")], + compound_id: Annotated[StrictStr, Field(description="compound (group of ion identities) to add tags to.")], + tag: Annotated[List[Tag], Field(description="tags to add.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -470,15 +478,17 @@ def delete_compound_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[None]: - """Delete compound (group of ion identities) with the given identifier (and the included features) from the specified project-space. + ) -> ApiResponse[List[Tag]]: + """[EXPERIMENTAL] Tags with the same name will be overwritten - Delete compound (group of ion identities) with the given identifier (and the included features) from the specified project-space. + [EXPERIMENTAL] Tags with the same name will be overwritten.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. - :param project_id: project-space to delete from. (required) + :param project_id: project-space to add to. (required) :type project_id: str - :param compound_id: identifier of the compound to delete. (required) + :param compound_id: compound (group of ion identities) to add tags to. (required) :type compound_id: str + :param tag: tags to add. (required) + :type tag: List[Tag] :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 @@ -501,9 +511,10 @@ def delete_compound_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._delete_compound_serialize( + _param = self._add_tags_to_compound_experimental_serialize( project_id=project_id, compound_id=compound_id, + tag=tag, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -511,7 +522,7 @@ def delete_compound_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': None, + '200': "List[Tag]", } response_data = self.api_client.call_api( *_param, @@ -525,10 +536,11 @@ def delete_compound_with_http_info( @validate_call - def delete_compound_without_preload_content( + def add_tags_to_compound_experimental_without_preload_content( self, - project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], - compound_id: Annotated[StrictStr, Field(description="identifier of the compound to delete.")], + project_id: Annotated[StrictStr, Field(description="project-space to add to.")], + compound_id: Annotated[StrictStr, Field(description="compound (group of ion identities) to add tags to.")], + tag: Annotated[List[Tag], Field(description="tags to add.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -542,14 +554,16 @@ def delete_compound_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Delete compound (group of ion identities) with the given identifier (and the included features) from the specified project-space. + """[EXPERIMENTAL] Tags with the same name will be overwritten - Delete compound (group of ion identities) with the given identifier (and the included features) from the specified project-space. + [EXPERIMENTAL] Tags with the same name will be overwritten.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. - :param project_id: project-space to delete from. (required) + :param project_id: project-space to add to. (required) :type project_id: str - :param compound_id: identifier of the compound to delete. (required) + :param compound_id: compound (group of ion identities) to add tags to. (required) :type compound_id: str + :param tag: tags to add. (required) + :type tag: List[Tag] :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 @@ -572,9 +586,10 @@ def delete_compound_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._delete_compound_serialize( + _param = self._add_tags_to_compound_experimental_serialize( project_id=project_id, compound_id=compound_id, + tag=tag, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -582,7 +597,7 @@ def delete_compound_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': None, + '200': "List[Tag]", } response_data = self.api_client.call_api( *_param, @@ -591,10 +606,11 @@ def delete_compound_without_preload_content( return response_data.response - def _delete_compound_serialize( + def _add_tags_to_compound_experimental_serialize( self, project_id, compound_id, + tag, _request_auth, _content_type, _headers, @@ -604,6 +620,7 @@ def _delete_compound_serialize( _host = None _collection_formats: Dict[str, str] = { + 'Tag': '', } _path_params: Dict[str, str] = {} @@ -622,17 +639,38 @@ def _delete_compound_serialize( # process the header parameters # process the form parameters # process the body parameter + if tag is not None: + _body_params = tag + # set the HTTP header `Accept` + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + # set the HTTP header `Content-Type` + if _content_type: + _header_params['Content-Type'] = _content_type + else: + _default_content_type = ( + self.api_client.select_header_content_type( + [ + 'application/json' + ] + ) + ) + if _default_content_type is not None: + _header_params['Content-Type'] = _default_content_type # authentication setting _auth_settings: List[str] = [ ] return self.api_client.param_serialize( - method='DELETE', - resource_path='/api/projects/{projectId}/compounds/{compoundId}', + method='PUT', + resource_path='/api/projects/{projectId}/compounds/tags/{compoundId}', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -649,12 +687,10 @@ def _delete_compound_serialize( @validate_call - def get_compound( + def delete_compound( self, - project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - compound_id: Annotated[StrictStr, Field(description="identifier of the compound (group of ion identities) to access.")], - opt_fields: Annotated[Optional[List[Optional[CompoundOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, - opt_fields_features: Optional[List[Optional[AlignedFeatureOptField]]] = None, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + compound_id: Annotated[StrictStr, Field(description="identifier of the compound to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -667,19 +703,15 @@ def get_compound( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> Compound: - """Get compound (group of ion identities) with the given identifier from the specified project-space. + ) -> None: + """Delete compound (group of ion identities) with the given identifier (and the included features) from the specified project-space. - Get compound (group of ion identities) with the given identifier from the specified project-space. + Delete compound (group of ion identities) with the given identifier (and the included features) from the specified project-space. - :param project_id: project-space to read from. (required) + :param project_id: project-space to delete from. (required) :type project_id: str - :param compound_id: identifier of the compound (group of ion identities) to access. (required) + :param compound_id: identifier of the compound to delete. (required) :type compound_id: str - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[CompoundOptField] - :param opt_fields_features: - :type opt_fields_features: List[AlignedFeatureOptField] :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 @@ -702,11 +734,9 @@ def get_compound( :return: Returns the result object. """ # noqa: E501 - _param = self._get_compound_serialize( + _param = self._delete_compound_serialize( project_id=project_id, compound_id=compound_id, - opt_fields=opt_fields, - opt_fields_features=opt_fields_features, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -714,7 +744,7 @@ def get_compound( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "Compound", + '200': None, } response_data = self.api_client.call_api( *_param, @@ -728,12 +758,10 @@ def get_compound( @validate_call - def get_compound_with_http_info( + def delete_compound_with_http_info( self, - project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - compound_id: Annotated[StrictStr, Field(description="identifier of the compound (group of ion identities) to access.")], - opt_fields: Annotated[Optional[List[Optional[CompoundOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, - opt_fields_features: Optional[List[Optional[AlignedFeatureOptField]]] = None, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + compound_id: Annotated[StrictStr, Field(description="identifier of the compound to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -746,19 +774,15 @@ def get_compound_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[Compound]: - """Get compound (group of ion identities) with the given identifier from the specified project-space. + ) -> ApiResponse[None]: + """Delete compound (group of ion identities) with the given identifier (and the included features) from the specified project-space. - Get compound (group of ion identities) with the given identifier from the specified project-space. + Delete compound (group of ion identities) with the given identifier (and the included features) from the specified project-space. - :param project_id: project-space to read from. (required) + :param project_id: project-space to delete from. (required) :type project_id: str - :param compound_id: identifier of the compound (group of ion identities) to access. (required) + :param compound_id: identifier of the compound to delete. (required) :type compound_id: str - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[CompoundOptField] - :param opt_fields_features: - :type opt_fields_features: List[AlignedFeatureOptField] :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 @@ -781,11 +805,9 @@ def get_compound_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_compound_serialize( + _param = self._delete_compound_serialize( project_id=project_id, compound_id=compound_id, - opt_fields=opt_fields, - opt_fields_features=opt_fields_features, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -793,7 +815,7 @@ def get_compound_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "Compound", + '200': None, } response_data = self.api_client.call_api( *_param, @@ -807,12 +829,10 @@ def get_compound_with_http_info( @validate_call - def get_compound_without_preload_content( + def delete_compound_without_preload_content( self, - project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - compound_id: Annotated[StrictStr, Field(description="identifier of the compound (group of ion identities) to access.")], - opt_fields: Annotated[Optional[List[Optional[CompoundOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, - opt_fields_features: Optional[List[Optional[AlignedFeatureOptField]]] = None, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + compound_id: Annotated[StrictStr, Field(description="identifier of the compound to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -826,18 +846,14 @@ def get_compound_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Get compound (group of ion identities) with the given identifier from the specified project-space. + """Delete compound (group of ion identities) with the given identifier (and the included features) from the specified project-space. - Get compound (group of ion identities) with the given identifier from the specified project-space. + Delete compound (group of ion identities) with the given identifier (and the included features) from the specified project-space. - :param project_id: project-space to read from. (required) + :param project_id: project-space to delete from. (required) :type project_id: str - :param compound_id: identifier of the compound (group of ion identities) to access. (required) + :param compound_id: identifier of the compound to delete. (required) :type compound_id: str - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[CompoundOptField] - :param opt_fields_features: - :type opt_fields_features: List[AlignedFeatureOptField] :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 @@ -860,11 +876,9 @@ def get_compound_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_compound_serialize( + _param = self._delete_compound_serialize( project_id=project_id, compound_id=compound_id, - opt_fields=opt_fields, - opt_fields_features=opt_fields_features, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -872,7 +886,7 @@ def get_compound_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "Compound", + '200': None, } response_data = self.api_client.call_api( *_param, @@ -881,12 +895,10 @@ def get_compound_without_preload_content( return response_data.response - def _get_compound_serialize( + def _delete_compound_serialize( self, project_id, compound_id, - opt_fields, - opt_fields_features, _request_auth, _content_type, _headers, @@ -896,8 +908,6 @@ def _get_compound_serialize( _host = None _collection_formats: Dict[str, str] = { - 'optFields': 'multi', - 'optFieldsFeatures': 'multi', } _path_params: Dict[str, str] = {} @@ -913,25 +923,11 @@ def _get_compound_serialize( if compound_id is not None: _path_params['compoundId'] = compound_id # process the query parameters - if opt_fields is not None: - - _query_params.append(('optFields', opt_fields)) - - if opt_fields_features is not None: - - _query_params.append(('optFieldsFeatures', opt_fields_features)) - # process the header parameters # process the form parameters # process the body parameter - # set the HTTP header `Accept` - _header_params['Accept'] = self.api_client.select_header_accept( - [ - 'application/json' - ] - ) # authentication setting @@ -939,7 +935,7 @@ def _get_compound_serialize( ] return self.api_client.param_serialize( - method='GET', + method='DELETE', resource_path='/api/projects/{projectId}/compounds/{compoundId}', path_params=_path_params, query_params=_query_params, @@ -957,11 +953,13 @@ def _get_compound_serialize( @validate_call - def get_compound_traces_experimental( + def get_compound( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - compound_id: Annotated[StrictStr, Field(description="compound which intensities should be read out")], - feature_id: Optional[StrictStr] = None, + compound_id: Annotated[StrictStr, Field(description="identifier of the compound (group of ion identities) to access.")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[CompoundOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + opt_fields_features: Optional[List[AlignedFeatureOptField]] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -974,17 +972,21 @@ def get_compound_traces_experimental( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> TraceSetExperimental: - """EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + ) -> Compound: + """Get compound (group of ion identities) with the given identifier from the specified project-space. - Returns the traces of the given compound. A trace consists of m/z and intensity values over the retention time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis, but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data. However, this also means that all traces can be directly compared against each other, as they all lie in the same retention time axis. + Get compound (group of ion identities) with the given identifier from the specified project-space. :param project_id: project-space to read from. (required) :type project_id: str - :param compound_id: compound which intensities should be read out (required) + :param compound_id: identifier of the compound (group of ion identities) to access. (required) :type compound_id: str - :param feature_id: - :type feature_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[CompoundOptField] + :param opt_fields_features: + :type opt_fields_features: List[AlignedFeatureOptField] :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 @@ -1007,10 +1009,12 @@ def get_compound_traces_experimental( :return: Returns the result object. """ # noqa: E501 - _param = self._get_compound_traces_experimental_serialize( + _param = self._get_compound_serialize( project_id=project_id, compound_id=compound_id, - feature_id=feature_id, + ms_data_search_prepared=ms_data_search_prepared, + opt_fields=opt_fields, + opt_fields_features=opt_fields_features, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1018,7 +1022,7 @@ def get_compound_traces_experimental( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "TraceSetExperimental", + '200': "Compound", } response_data = self.api_client.call_api( *_param, @@ -1032,11 +1036,13 @@ def get_compound_traces_experimental( @validate_call - def get_compound_traces_experimental_with_http_info( + def get_compound_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - compound_id: Annotated[StrictStr, Field(description="compound which intensities should be read out")], - feature_id: Optional[StrictStr] = None, + compound_id: Annotated[StrictStr, Field(description="identifier of the compound (group of ion identities) to access.")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[CompoundOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + opt_fields_features: Optional[List[AlignedFeatureOptField]] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1049,17 +1055,21 @@ def get_compound_traces_experimental_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[TraceSetExperimental]: - """EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + ) -> ApiResponse[Compound]: + """Get compound (group of ion identities) with the given identifier from the specified project-space. - Returns the traces of the given compound. A trace consists of m/z and intensity values over the retention time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis, but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data. However, this also means that all traces can be directly compared against each other, as they all lie in the same retention time axis. + Get compound (group of ion identities) with the given identifier from the specified project-space. :param project_id: project-space to read from. (required) :type project_id: str - :param compound_id: compound which intensities should be read out (required) + :param compound_id: identifier of the compound (group of ion identities) to access. (required) :type compound_id: str - :param feature_id: - :type feature_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[CompoundOptField] + :param opt_fields_features: + :type opt_fields_features: List[AlignedFeatureOptField] :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 @@ -1082,10 +1092,12 @@ def get_compound_traces_experimental_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_compound_traces_experimental_serialize( + _param = self._get_compound_serialize( project_id=project_id, compound_id=compound_id, - feature_id=feature_id, + ms_data_search_prepared=ms_data_search_prepared, + opt_fields=opt_fields, + opt_fields_features=opt_fields_features, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1093,7 +1105,7 @@ def get_compound_traces_experimental_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "TraceSetExperimental", + '200': "Compound", } response_data = self.api_client.call_api( *_param, @@ -1107,11 +1119,13 @@ def get_compound_traces_experimental_with_http_info( @validate_call - def get_compound_traces_experimental_without_preload_content( + def get_compound_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - compound_id: Annotated[StrictStr, Field(description="compound which intensities should be read out")], - feature_id: Optional[StrictStr] = None, + compound_id: Annotated[StrictStr, Field(description="identifier of the compound (group of ion identities) to access.")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[CompoundOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + opt_fields_features: Optional[List[AlignedFeatureOptField]] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1125,16 +1139,20 @@ def get_compound_traces_experimental_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + """Get compound (group of ion identities) with the given identifier from the specified project-space. - Returns the traces of the given compound. A trace consists of m/z and intensity values over the retention time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis, but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data. However, this also means that all traces can be directly compared against each other, as they all lie in the same retention time axis. + Get compound (group of ion identities) with the given identifier from the specified project-space. :param project_id: project-space to read from. (required) :type project_id: str - :param compound_id: compound which intensities should be read out (required) + :param compound_id: identifier of the compound (group of ion identities) to access. (required) :type compound_id: str - :param feature_id: - :type feature_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[CompoundOptField] + :param opt_fields_features: + :type opt_fields_features: List[AlignedFeatureOptField] :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 @@ -1157,10 +1175,12 @@ def get_compound_traces_experimental_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_compound_traces_experimental_serialize( + _param = self._get_compound_serialize( project_id=project_id, compound_id=compound_id, - feature_id=feature_id, + ms_data_search_prepared=ms_data_search_prepared, + opt_fields=opt_fields, + opt_fields_features=opt_fields_features, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1168,7 +1188,7 @@ def get_compound_traces_experimental_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "TraceSetExperimental", + '200': "Compound", } response_data = self.api_client.call_api( *_param, @@ -1177,11 +1197,13 @@ def get_compound_traces_experimental_without_preload_content( return response_data.response - def _get_compound_traces_experimental_serialize( + def _get_compound_serialize( self, project_id, compound_id, - feature_id, + ms_data_search_prepared, + opt_fields, + opt_fields_features, _request_auth, _content_type, _headers, @@ -1191,6 +1213,8 @@ def _get_compound_traces_experimental_serialize( _host = None _collection_formats: Dict[str, str] = { + 'optFields': 'multi', + 'optFieldsFeatures': 'multi', } _path_params: Dict[str, str] = {} @@ -1206,9 +1230,17 @@ def _get_compound_traces_experimental_serialize( if compound_id is not None: _path_params['compoundId'] = compound_id # process the query parameters - if feature_id is not None: + if ms_data_search_prepared is not None: - _query_params.append(('featureId', feature_id)) + _query_params.append(('msDataSearchPrepared', ms_data_search_prepared)) + + if opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) + + if opt_fields_features is not None: + + _query_params.append(('optFieldsFeatures', opt_fields_features)) # process the header parameters # process the form parameters @@ -1229,7 +1261,7 @@ def _get_compound_traces_experimental_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/compounds/{compoundId}/traces', + resource_path='/api/projects/{projectId}/compounds/{compoundId}', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -1246,11 +1278,10 @@ def _get_compound_traces_experimental_serialize( @validate_call - def get_compounds( + def get_compound_quant_table_experimental( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - opt_fields: Annotated[Optional[List[Optional[CompoundOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, - opt_fields_features: Optional[List[Optional[AlignedFeatureOptField]]] = None, + type: Annotated[Optional[QuantMeasure], Field(description="quantification type.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1263,17 +1294,15 @@ def get_compounds( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> List[Compound]: - """List of all available compounds (group of ion identities) in the given project-space. + ) -> QuantTableExperimental: + """[EXPERIMENTAL] Returns the full quantification table of compounds - List of all available compounds (group of ion identities) in the given project-space. + [EXPERIMENTAL] Returns the full quantification table of compounds.
The quantification table contains a quantification of the features within all runs they are contained in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.* :param project_id: project-space to read from. (required) :type project_id: str - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[CompoundOptField] - :param opt_fields_features: - :type opt_fields_features: List[AlignedFeatureOptField] + :param type: quantification type. + :type type: QuantMeasure :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 @@ -1296,10 +1325,9 @@ def get_compounds( :return: Returns the result object. """ # noqa: E501 - _param = self._get_compounds_serialize( + _param = self._get_compound_quant_table_experimental_serialize( project_id=project_id, - opt_fields=opt_fields, - opt_fields_features=opt_fields_features, + type=type, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1307,7 +1335,7 @@ def get_compounds( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[Compound]", + '200': "QuantTableExperimental", } response_data = self.api_client.call_api( *_param, @@ -1321,11 +1349,10 @@ def get_compounds( @validate_call - def get_compounds_with_http_info( + def get_compound_quant_table_experimental_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - opt_fields: Annotated[Optional[List[Optional[CompoundOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, - opt_fields_features: Optional[List[Optional[AlignedFeatureOptField]]] = None, + type: Annotated[Optional[QuantMeasure], Field(description="quantification type.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1338,17 +1365,15 @@ def get_compounds_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[List[Compound]]: - """List of all available compounds (group of ion identities) in the given project-space. + ) -> ApiResponse[QuantTableExperimental]: + """[EXPERIMENTAL] Returns the full quantification table of compounds - List of all available compounds (group of ion identities) in the given project-space. + [EXPERIMENTAL] Returns the full quantification table of compounds.
The quantification table contains a quantification of the features within all runs they are contained in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.* :param project_id: project-space to read from. (required) :type project_id: str - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[CompoundOptField] - :param opt_fields_features: - :type opt_fields_features: List[AlignedFeatureOptField] + :param type: quantification type. + :type type: QuantMeasure :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 @@ -1371,10 +1396,9 @@ def get_compounds_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_compounds_serialize( + _param = self._get_compound_quant_table_experimental_serialize( project_id=project_id, - opt_fields=opt_fields, - opt_fields_features=opt_fields_features, + type=type, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1382,7 +1406,7 @@ def get_compounds_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[Compound]", + '200': "QuantTableExperimental", } response_data = self.api_client.call_api( *_param, @@ -1396,11 +1420,10 @@ def get_compounds_with_http_info( @validate_call - def get_compounds_without_preload_content( + def get_compound_quant_table_experimental_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - opt_fields: Annotated[Optional[List[Optional[CompoundOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, - opt_fields_features: Optional[List[Optional[AlignedFeatureOptField]]] = None, + type: Annotated[Optional[QuantMeasure], Field(description="quantification type.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1414,16 +1437,14 @@ def get_compounds_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """List of all available compounds (group of ion identities) in the given project-space. + """[EXPERIMENTAL] Returns the full quantification table of compounds - List of all available compounds (group of ion identities) in the given project-space. + [EXPERIMENTAL] Returns the full quantification table of compounds.
The quantification table contains a quantification of the features within all runs they are contained in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.* :param project_id: project-space to read from. (required) :type project_id: str - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[CompoundOptField] - :param opt_fields_features: - :type opt_fields_features: List[AlignedFeatureOptField] + :param type: quantification type. + :type type: QuantMeasure :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 @@ -1446,10 +1467,9 @@ def get_compounds_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_compounds_serialize( + _param = self._get_compound_quant_table_experimental_serialize( project_id=project_id, - opt_fields=opt_fields, - opt_fields_features=opt_fields_features, + type=type, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1457,7 +1477,7 @@ def get_compounds_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[Compound]", + '200': "QuantTableExperimental", } response_data = self.api_client.call_api( *_param, @@ -1466,11 +1486,10 @@ def get_compounds_without_preload_content( return response_data.response - def _get_compounds_serialize( + def _get_compound_quant_table_experimental_serialize( self, project_id, - opt_fields, - opt_fields_features, + type, _request_auth, _content_type, _headers, @@ -1480,8 +1499,6 @@ def _get_compounds_serialize( _host = None _collection_formats: Dict[str, str] = { - 'optFields': 'multi', - 'optFieldsFeatures': 'multi', } _path_params: Dict[str, str] = {} @@ -1495,13 +1512,9 @@ def _get_compounds_serialize( if project_id is not None: _path_params['projectId'] = project_id # process the query parameters - if opt_fields is not None: - - _query_params.append(('optFields', opt_fields)) - - if opt_fields_features is not None: + if type is not None: - _query_params.append(('optFieldsFeatures', opt_fields_features)) + _query_params.append(('type', type.value)) # process the header parameters # process the form parameters @@ -1522,7 +1535,7 @@ def _get_compounds_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/compounds', + resource_path='/api/projects/{projectId}/compounds/quant-table', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -1539,14 +1552,11 @@ def _get_compounds_serialize( @validate_call - def get_compounds_paged( + def get_compound_quant_table_row_experimental( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[CompoundOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, - opt_fields_features: Optional[List[Optional[AlignedFeatureOptField]]] = None, + compound_id: Annotated[StrictStr, Field(description="compound which should be read out")], + type: Annotated[Optional[QuantMeasure], Field(description="quantification type.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1559,23 +1569,17 @@ def get_compounds_paged( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> PagedModelCompound: - """Page of available compounds (group of ion identities) in the given project-space. + ) -> QuantTableExperimental: + """[EXPERIMENTAL] Returns a single quantification table row for the given compound - Page of available compounds (group of ion identities) in the given project-space. + [EXPERIMENTAL] Returns a single quantification table row for the given compound.
The quantification table contains a quantification of the feature within all samples it is contained in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.* :param project_id: project-space to read from. (required) :type project_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[CompoundOptField] - :param opt_fields_features: - :type opt_fields_features: List[AlignedFeatureOptField] + :param compound_id: compound which should be read out (required) + :type compound_id: str + :param type: quantification type. + :type type: QuantMeasure :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 @@ -1598,13 +1602,10 @@ def get_compounds_paged( :return: Returns the result object. """ # noqa: E501 - _param = self._get_compounds_paged_serialize( + _param = self._get_compound_quant_table_row_experimental_serialize( project_id=project_id, - page=page, - size=size, - sort=sort, - opt_fields=opt_fields, - opt_fields_features=opt_fields_features, + compound_id=compound_id, + type=type, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1612,7 +1613,7 @@ def get_compounds_paged( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelCompound", + '200': "QuantTableExperimental", } response_data = self.api_client.call_api( *_param, @@ -1626,14 +1627,11 @@ def get_compounds_paged( @validate_call - def get_compounds_paged_with_http_info( + def get_compound_quant_table_row_experimental_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[CompoundOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, - opt_fields_features: Optional[List[Optional[AlignedFeatureOptField]]] = None, + compound_id: Annotated[StrictStr, Field(description="compound which should be read out")], + type: Annotated[Optional[QuantMeasure], Field(description="quantification type.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1646,23 +1644,17 @@ def get_compounds_paged_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[PagedModelCompound]: - """Page of available compounds (group of ion identities) in the given project-space. + ) -> ApiResponse[QuantTableExperimental]: + """[EXPERIMENTAL] Returns a single quantification table row for the given compound - Page of available compounds (group of ion identities) in the given project-space. + [EXPERIMENTAL] Returns a single quantification table row for the given compound.
The quantification table contains a quantification of the feature within all samples it is contained in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.* :param project_id: project-space to read from. (required) :type project_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[CompoundOptField] - :param opt_fields_features: - :type opt_fields_features: List[AlignedFeatureOptField] + :param compound_id: compound which should be read out (required) + :type compound_id: str + :param type: quantification type. + :type type: QuantMeasure :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 @@ -1685,13 +1677,10 @@ def get_compounds_paged_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_compounds_paged_serialize( + _param = self._get_compound_quant_table_row_experimental_serialize( project_id=project_id, - page=page, - size=size, - sort=sort, - opt_fields=opt_fields, - opt_fields_features=opt_fields_features, + compound_id=compound_id, + type=type, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1699,7 +1688,7 @@ def get_compounds_paged_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelCompound", + '200': "QuantTableExperimental", } response_data = self.api_client.call_api( *_param, @@ -1713,14 +1702,11 @@ def get_compounds_paged_with_http_info( @validate_call - def get_compounds_paged_without_preload_content( + def get_compound_quant_table_row_experimental_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[CompoundOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, - opt_fields_features: Optional[List[Optional[AlignedFeatureOptField]]] = None, + compound_id: Annotated[StrictStr, Field(description="compound which should be read out")], + type: Annotated[Optional[QuantMeasure], Field(description="quantification type.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1734,22 +1720,16 @@ def get_compounds_paged_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Page of available compounds (group of ion identities) in the given project-space. + """[EXPERIMENTAL] Returns a single quantification table row for the given compound - Page of available compounds (group of ion identities) in the given project-space. + [EXPERIMENTAL] Returns a single quantification table row for the given compound.
The quantification table contains a quantification of the feature within all samples it is contained in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.* :param project_id: project-space to read from. (required) :type project_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[CompoundOptField] - :param opt_fields_features: - :type opt_fields_features: List[AlignedFeatureOptField] + :param compound_id: compound which should be read out (required) + :type compound_id: str + :param type: quantification type. + :type type: QuantMeasure :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 @@ -1772,13 +1752,10 @@ def get_compounds_paged_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_compounds_paged_serialize( + _param = self._get_compound_quant_table_row_experimental_serialize( project_id=project_id, - page=page, - size=size, - sort=sort, - opt_fields=opt_fields, - opt_fields_features=opt_fields_features, + compound_id=compound_id, + type=type, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1786,7 +1763,7 @@ def get_compounds_paged_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelCompound", + '200': "QuantTableExperimental", } response_data = self.api_client.call_api( *_param, @@ -1795,14 +1772,11 @@ def get_compounds_paged_without_preload_content( return response_data.response - def _get_compounds_paged_serialize( + def _get_compound_quant_table_row_experimental_serialize( self, project_id, - page, - size, - sort, - opt_fields, - opt_fields_features, + compound_id, + type, _request_auth, _content_type, _headers, @@ -1812,9 +1786,6 @@ def _get_compounds_paged_serialize( _host = None _collection_formats: Dict[str, str] = { - 'sort': 'multi', - 'optFields': 'multi', - 'optFieldsFeatures': 'multi', } _path_params: Dict[str, str] = {} @@ -1827,26 +1798,12 @@ def _get_compounds_paged_serialize( # process the path parameters if project_id is not None: _path_params['projectId'] = project_id + if compound_id is not None: + _path_params['compoundId'] = compound_id # process the query parameters - if page is not None: - - _query_params.append(('page', page)) - - if size is not None: - - _query_params.append(('size', size)) - - if sort is not None: - - _query_params.append(('sort', sort)) - - if opt_fields is not None: - - _query_params.append(('optFields', opt_fields)) - - if opt_fields_features is not None: + if type is not None: - _query_params.append(('optFieldsFeatures', opt_fields_features)) + _query_params.append(('type', type.value)) # process the header parameters # process the form parameters @@ -1867,7 +1824,2209 @@ def _get_compounds_paged_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/compounds/page', + resource_path='/api/projects/{projectId}/compounds/{compoundId}/quant-table-row', + 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_compound_traces_experimental( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + compound_id: Annotated[StrictStr, Field(description="compound which intensities should be read out")], + feature_id: Optional[StrictStr] = 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, + ) -> TraceSetExperimental: + """[EXPERIMENTAL] Returns the traces of the given compound + + [EXPERIMENTAL] Returns the traces of the given compound.
A trace consists of m/z and intensity values over the retention time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis, but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data. However, this also means that all traces can be directly compared against each other, as they all lie in the same retention time axis.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.* + + :param project_id: project-space to read from. (required) + :type project_id: str + :param compound_id: compound which intensities should be read out (required) + :type compound_id: str + :param feature_id: + :type feature_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._get_compound_traces_experimental_serialize( + project_id=project_id, + compound_id=compound_id, + feature_id=feature_id, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "TraceSetExperimental", + } + 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_compound_traces_experimental_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + compound_id: Annotated[StrictStr, Field(description="compound which intensities should be read out")], + feature_id: Optional[StrictStr] = 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[TraceSetExperimental]: + """[EXPERIMENTAL] Returns the traces of the given compound + + [EXPERIMENTAL] Returns the traces of the given compound.
A trace consists of m/z and intensity values over the retention time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis, but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data. However, this also means that all traces can be directly compared against each other, as they all lie in the same retention time axis.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.* + + :param project_id: project-space to read from. (required) + :type project_id: str + :param compound_id: compound which intensities should be read out (required) + :type compound_id: str + :param feature_id: + :type feature_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._get_compound_traces_experimental_serialize( + project_id=project_id, + compound_id=compound_id, + feature_id=feature_id, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "TraceSetExperimental", + } + 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_compound_traces_experimental_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + compound_id: Annotated[StrictStr, Field(description="compound which intensities should be read out")], + feature_id: Optional[StrictStr] = 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: + """[EXPERIMENTAL] Returns the traces of the given compound + + [EXPERIMENTAL] Returns the traces of the given compound.
A trace consists of m/z and intensity values over the retention time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis, but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data. However, this also means that all traces can be directly compared against each other, as they all lie in the same retention time axis.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.* + + :param project_id: project-space to read from. (required) + :type project_id: str + :param compound_id: compound which intensities should be read out (required) + :type compound_id: str + :param feature_id: + :type feature_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._get_compound_traces_experimental_serialize( + project_id=project_id, + compound_id=compound_id, + feature_id=feature_id, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "TraceSetExperimental", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_compound_traces_experimental_serialize( + self, + project_id, + compound_id, + feature_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, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + if compound_id is not None: + _path_params['compoundId'] = compound_id + # process the query parameters + if feature_id is not None: + + _query_params.append(('featureId', feature_id)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/compounds/{compoundId}/traces', + 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_compounds( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[CompoundOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + opt_fields_features: Optional[List[AlignedFeatureOptField]] = 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, + ) -> List[Compound]: + """List of all available compounds (group of ion identities) in the given project-space. + + List of all available compounds (group of ion identities) in the given project-space. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[CompoundOptField] + :param opt_fields_features: + :type opt_fields_features: List[AlignedFeatureOptField] + :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_compounds_serialize( + project_id=project_id, + ms_data_search_prepared=ms_data_search_prepared, + opt_fields=opt_fields, + opt_fields_features=opt_fields_features, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[Compound]", + } + 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_compounds_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[CompoundOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + opt_fields_features: Optional[List[AlignedFeatureOptField]] = 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[List[Compound]]: + """List of all available compounds (group of ion identities) in the given project-space. + + List of all available compounds (group of ion identities) in the given project-space. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[CompoundOptField] + :param opt_fields_features: + :type opt_fields_features: List[AlignedFeatureOptField] + :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_compounds_serialize( + project_id=project_id, + ms_data_search_prepared=ms_data_search_prepared, + opt_fields=opt_fields, + opt_fields_features=opt_fields_features, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[Compound]", + } + 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_compounds_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[CompoundOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + opt_fields_features: Optional[List[AlignedFeatureOptField]] = 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: + """List of all available compounds (group of ion identities) in the given project-space. + + List of all available compounds (group of ion identities) in the given project-space. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[CompoundOptField] + :param opt_fields_features: + :type opt_fields_features: List[AlignedFeatureOptField] + :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_compounds_serialize( + project_id=project_id, + ms_data_search_prepared=ms_data_search_prepared, + opt_fields=opt_fields, + opt_fields_features=opt_fields_features, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[Compound]", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_compounds_serialize( + self, + project_id, + ms_data_search_prepared, + opt_fields, + opt_fields_features, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + 'optFields': 'multi', + 'optFieldsFeatures': 'multi', + } + + _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, str] = {} + _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 ms_data_search_prepared is not None: + + _query_params.append(('msDataSearchPrepared', ms_data_search_prepared)) + + if opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) + + if opt_fields_features is not None: + + _query_params.append(('optFieldsFeatures', opt_fields_features)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/compounds', + 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_compounds_by_group_experimental( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + group_name: Annotated[StrictStr, Field(description="tag group name.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[CompoundOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = 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, + ) -> PagedModelCompound: + """[EXPERIMENTAL] Get compounds (group of ion identities) by tag group + + [EXPERIMENTAL] Get compounds (group of ion identities) by tag group.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param group_name: tag group name. (required) + :type group_name: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[CompoundOptField] + :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_compounds_by_group_experimental_serialize( + project_id=project_id, + group_name=group_name, + page=page, + size=size, + sort=sort, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "PagedModelCompound", + } + 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_compounds_by_group_experimental_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + group_name: Annotated[StrictStr, Field(description="tag group name.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[CompoundOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = 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[PagedModelCompound]: + """[EXPERIMENTAL] Get compounds (group of ion identities) by tag group + + [EXPERIMENTAL] Get compounds (group of ion identities) by tag group.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param group_name: tag group name. (required) + :type group_name: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[CompoundOptField] + :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_compounds_by_group_experimental_serialize( + project_id=project_id, + group_name=group_name, + page=page, + size=size, + sort=sort, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "PagedModelCompound", + } + 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_compounds_by_group_experimental_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + group_name: Annotated[StrictStr, Field(description="tag group name.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[CompoundOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = 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: + """[EXPERIMENTAL] Get compounds (group of ion identities) by tag group + + [EXPERIMENTAL] Get compounds (group of ion identities) by tag group.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param group_name: tag group name. (required) + :type group_name: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[CompoundOptField] + :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_compounds_by_group_experimental_serialize( + project_id=project_id, + group_name=group_name, + page=page, + size=size, + sort=sort, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "PagedModelCompound", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_compounds_by_group_experimental_serialize( + self, + project_id, + group_name, + page, + size, + sort, + opt_fields, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + 'sort': 'multi', + 'optFields': 'multi', + } + + _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, str] = {} + _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 group_name is not None: + + _query_params.append(('groupName', group_name)) + + if page is not None: + + _query_params.append(('page', page)) + + if size is not None: + + _query_params.append(('size', size)) + + if sort is not None: + + _query_params.append(('sort', sort)) + + if opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/compounds/grouped', + 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_compounds_by_tag_experimental( + self, + project_id: Annotated[StrictStr, Field(description="project space to get compounds (group of ion identities) from.")], + filter: Annotated[Optional[StrictStr], Field(description="tag filter.")] = None, + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[CompoundOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = 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, + ) -> PagedModelCompound: + """[EXPERIMENTAL] Get compounds (group of ion identities) by tag + + [EXPERIMENTAL] Get compounds (group of ion identities) by tag.
The filter string must contain one or more clauses. A clause is prefÃxed by a field name.
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). Tag name based field need to be prefixed with the namespace tags.. Possible value types of tags are bool, integer, real, text, date, or time - tag value The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.
A clause may be:
tags.MyTagA:sampletags.MyTagA:"Some Text"tags.MyTagA:/[mb]oat/tags.MyTagB<3[ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3] Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )
The syntax allows to build complex filter queries such as:
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
The filter string must contain one or more clauses. A clause is prefÃxed by a field name.
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). Tag name based field need to be prefixed with the namespace tags.. Possible value types of tags are bool, integer, real, text, date, or time - tag value The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.
A clause may be:
tags.MyTagA:sampletags.MyTagA:"Some Text"tags.MyTagA:/[mb]oat/tags.MyTagB<3[ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3] Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )
The syntax allows to build complex filter queries such as:
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
The filter string must contain one or more clauses. A clause is prefÃxed by a field name.
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). Tag name based field need to be prefixed with the namespace tags.. Possible value types of tags are bool, integer, real, text, date, or time - tag value The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.
A clause may be:
tags.MyTagA:sampletags.MyTagA:"Some Text"tags.MyTagA:/[mb]oat/tags.MyTagB<3[ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3] Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )
The syntax allows to build complex filter queries such as:
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
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param compound_id: compound (group of ion identities) to delete tag from. (required) + :type compound_id: str + :param tag_name: name of the tag to delete. (required) + :type tag_name: 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._remove_tag_from_compound_experimental_serialize( + project_id=project_id, + compound_id=compound_id, + tag_name=tag_name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': 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 remove_tag_from_compound_experimental_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + compound_id: Annotated[StrictStr, Field(description="compound (group of ion identities) to delete tag from.")], + tag_name: Annotated[StrictStr, Field(description="name of the tag to delete.")], + _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]: + """[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space + + [EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param compound_id: compound (group of ion identities) to delete tag from. (required) + :type compound_id: str + :param tag_name: name of the tag to delete. (required) + :type tag_name: 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._remove_tag_from_compound_experimental_serialize( + project_id=project_id, + compound_id=compound_id, + tag_name=tag_name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': 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 remove_tag_from_compound_experimental_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + compound_id: Annotated[StrictStr, Field(description="compound (group of ion identities) to delete tag from.")], + tag_name: Annotated[StrictStr, Field(description="name of the tag to delete.")], + _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: + """[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space + + [EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param compound_id: compound (group of ion identities) to delete tag from. (required) + :type compound_id: str + :param tag_name: name of the tag to delete. (required) + :type tag_name: 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._remove_tag_from_compound_experimental_serialize( + project_id=project_id, + compound_id=compound_id, + tag_name=tag_name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': None, + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _remove_tag_from_compound_experimental_serialize( + self, + project_id, + compound_id, + tag_name, + _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, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + if compound_id is not None: + _path_params['compoundId'] = compound_id + if tag_name is not None: + _path_params['tagName'] = tag_name + # 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='DELETE', + resource_path='/api/projects/{projectId}/compounds/tags/{compoundId}/{tagName}', path_params=_path_params, query_params=_query_params, header_params=_header_params, diff --git a/client-api_python/generated/PySirius/api/feature_statistics_api.py b/client-api_python/generated/PySirius/api/feature_statistics_api.py new file mode 100644 index 00000000..f7375296 --- /dev/null +++ b/client-api_python/generated/PySirius/api/feature_statistics_api.py @@ -0,0 +1,1267 @@ +# 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, StrictStr +from typing import List, Optional +from typing_extensions import Annotated +from PySirius.models.aggregation_type import AggregationType +from PySirius.models.fold_change import FoldChange +from PySirius.models.job import Job +from PySirius.models.job_opt_field import JobOptField +from PySirius.models.quant_measure import QuantMeasure +from PySirius.models.statistics_table import StatisticsTable + +from PySirius.api_client import ApiClient, RequestSerialized +from PySirius.api_response import ApiResponse +from PySirius.rest import RESTResponseType + + +class FeatureStatisticsApi: + """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 compute_aligned_feature_fold_changes_experimental( + self, + project_id: Annotated[StrictStr, Field(description="project-space to compute the fold change in.")], + left_group_name: Annotated[StrictStr, Field(description="name of the left tag group.")], + right_group_name: Annotated[StrictStr, Field(description="name of the right tag group.")], + aggregation: Annotated[Optional[AggregationType], Field(description="aggregation type.")] = None, + quantification: Annotated[Optional[QuantMeasure], Field(description="quantification type.")] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="job opt fields.")] = 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, + ) -> Job: + """[EXPERIMENTAL] Compute the fold change between two groups of runs + + [EXPERIMENTAL] Compute the fold change between two groups of runs.
The runs need to be tagged and grouped.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to compute the fold change in. (required) + :type project_id: str + :param left_group_name: name of the left tag group. (required) + :type left_group_name: str + :param right_group_name: name of the right tag group. (required) + :type right_group_name: str + :param aggregation: aggregation type. + :type aggregation: AggregationType + :param quantification: quantification type. + :type quantification: QuantMeasure + :param opt_fields: job opt fields. + :type opt_fields: List[JobOptField] + :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._compute_aligned_feature_fold_changes_experimental_serialize( + project_id=project_id, + left_group_name=left_group_name, + right_group_name=right_group_name, + aggregation=aggregation, + quantification=quantification, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "Job", + } + 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 compute_aligned_feature_fold_changes_experimental_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to compute the fold change in.")], + left_group_name: Annotated[StrictStr, Field(description="name of the left tag group.")], + right_group_name: Annotated[StrictStr, Field(description="name of the right tag group.")], + aggregation: Annotated[Optional[AggregationType], Field(description="aggregation type.")] = None, + quantification: Annotated[Optional[QuantMeasure], Field(description="quantification type.")] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="job opt fields.")] = 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[Job]: + """[EXPERIMENTAL] Compute the fold change between two groups of runs + + [EXPERIMENTAL] Compute the fold change between two groups of runs.
The runs need to be tagged and grouped.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to compute the fold change in. (required) + :type project_id: str + :param left_group_name: name of the left tag group. (required) + :type left_group_name: str + :param right_group_name: name of the right tag group. (required) + :type right_group_name: str + :param aggregation: aggregation type. + :type aggregation: AggregationType + :param quantification: quantification type. + :type quantification: QuantMeasure + :param opt_fields: job opt fields. + :type opt_fields: List[JobOptField] + :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._compute_aligned_feature_fold_changes_experimental_serialize( + project_id=project_id, + left_group_name=left_group_name, + right_group_name=right_group_name, + aggregation=aggregation, + quantification=quantification, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "Job", + } + 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 compute_aligned_feature_fold_changes_experimental_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to compute the fold change in.")], + left_group_name: Annotated[StrictStr, Field(description="name of the left tag group.")], + right_group_name: Annotated[StrictStr, Field(description="name of the right tag group.")], + aggregation: Annotated[Optional[AggregationType], Field(description="aggregation type.")] = None, + quantification: Annotated[Optional[QuantMeasure], Field(description="quantification type.")] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="job opt fields.")] = 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: + """[EXPERIMENTAL] Compute the fold change between two groups of runs + + [EXPERIMENTAL] Compute the fold change between two groups of runs.
The runs need to be tagged and grouped.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to compute the fold change in. (required) + :type project_id: str + :param left_group_name: name of the left tag group. (required) + :type left_group_name: str + :param right_group_name: name of the right tag group. (required) + :type right_group_name: str + :param aggregation: aggregation type. + :type aggregation: AggregationType + :param quantification: quantification type. + :type quantification: QuantMeasure + :param opt_fields: job opt fields. + :type opt_fields: List[JobOptField] + :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._compute_aligned_feature_fold_changes_experimental_serialize( + project_id=project_id, + left_group_name=left_group_name, + right_group_name=right_group_name, + aggregation=aggregation, + quantification=quantification, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "Job", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _compute_aligned_feature_fold_changes_experimental_serialize( + self, + project_id, + left_group_name, + right_group_name, + aggregation, + quantification, + opt_fields, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + 'optFields': 'multi', + } + + _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, str] = {} + _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 left_group_name is not None: + + _query_params.append(('leftGroupName', left_group_name)) + + if right_group_name is not None: + + _query_params.append(('rightGroupName', right_group_name)) + + if aggregation is not None: + + _query_params.append(('aggregation', aggregation.value)) + + if quantification is not None: + + _query_params.append(('quantification', quantification.value)) + + if opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='PUT', + resource_path='/api/projects/{projectId}/aligned-features/statistics/foldchange/compute', + 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 delete_aligned_feature_fold_changes_experimental( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + left_group_name: Annotated[StrictStr, Field(description="name of the left group.")], + right_group_name: Annotated[StrictStr, Field(description="name of the right group.")], + aggregation: Optional[AggregationType] = None, + quantification: Optional[QuantMeasure] = 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, + ) -> None: + """[EXPERIMENTAL] Delete fold changes + + [EXPERIMENTAL] Delete fold changes.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param left_group_name: name of the left group. (required) + :type left_group_name: str + :param right_group_name: name of the right group. (required) + :type right_group_name: str + :param aggregation: + :type aggregation: AggregationType + :param quantification: + :type quantification: QuantMeasure + :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._delete_aligned_feature_fold_changes_experimental_serialize( + project_id=project_id, + left_group_name=left_group_name, + right_group_name=right_group_name, + aggregation=aggregation, + quantification=quantification, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': 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 delete_aligned_feature_fold_changes_experimental_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + left_group_name: Annotated[StrictStr, Field(description="name of the left group.")], + right_group_name: Annotated[StrictStr, Field(description="name of the right group.")], + aggregation: Optional[AggregationType] = None, + quantification: Optional[QuantMeasure] = 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[None]: + """[EXPERIMENTAL] Delete fold changes + + [EXPERIMENTAL] Delete fold changes.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param left_group_name: name of the left group. (required) + :type left_group_name: str + :param right_group_name: name of the right group. (required) + :type right_group_name: str + :param aggregation: + :type aggregation: AggregationType + :param quantification: + :type quantification: QuantMeasure + :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._delete_aligned_feature_fold_changes_experimental_serialize( + project_id=project_id, + left_group_name=left_group_name, + right_group_name=right_group_name, + aggregation=aggregation, + quantification=quantification, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': 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 delete_aligned_feature_fold_changes_experimental_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + left_group_name: Annotated[StrictStr, Field(description="name of the left group.")], + right_group_name: Annotated[StrictStr, Field(description="name of the right group.")], + aggregation: Optional[AggregationType] = None, + quantification: Optional[QuantMeasure] = 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: + """[EXPERIMENTAL] Delete fold changes + + [EXPERIMENTAL] Delete fold changes.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param left_group_name: name of the left group. (required) + :type left_group_name: str + :param right_group_name: name of the right group. (required) + :type right_group_name: str + :param aggregation: + :type aggregation: AggregationType + :param quantification: + :type quantification: QuantMeasure + :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._delete_aligned_feature_fold_changes_experimental_serialize( + project_id=project_id, + left_group_name=left_group_name, + right_group_name=right_group_name, + aggregation=aggregation, + quantification=quantification, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': None, + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _delete_aligned_feature_fold_changes_experimental_serialize( + self, + project_id, + left_group_name, + right_group_name, + aggregation, + quantification, + _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, str] = {} + _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 left_group_name is not None: + + _query_params.append(('leftGroupName', left_group_name)) + + if right_group_name is not None: + + _query_params.append(('rightGroupName', right_group_name)) + + if aggregation is not None: + + _query_params.append(('aggregation', aggregation.value)) + + if quantification is not None: + + _query_params.append(('quantification', quantification.value)) + + # 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='DELETE', + resource_path='/api/projects/{projectId}/aligned-features/statistics/foldchanges', + 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_aligned_feature_fold_change_table_experimental( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aggregation: Annotated[Optional[AggregationType], Field(description="aggregation type.")] = None, + quantification: Annotated[Optional[QuantMeasure], Field(description="quantification type.")] = 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, + ) -> StatisticsTable: + """[EXPERIMENTAL] Get table of all fold changes in the project space + + [EXPERIMENTAL] Get table of all fold changes in the project space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aggregation: aggregation type. + :type aggregation: AggregationType + :param quantification: quantification type. + :type quantification: QuantMeasure + :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_aligned_feature_fold_change_table_experimental_serialize( + project_id=project_id, + aggregation=aggregation, + quantification=quantification, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "StatisticsTable", + } + 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_aligned_feature_fold_change_table_experimental_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aggregation: Annotated[Optional[AggregationType], Field(description="aggregation type.")] = None, + quantification: Annotated[Optional[QuantMeasure], Field(description="quantification type.")] = 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[StatisticsTable]: + """[EXPERIMENTAL] Get table of all fold changes in the project space + + [EXPERIMENTAL] Get table of all fold changes in the project space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aggregation: aggregation type. + :type aggregation: AggregationType + :param quantification: quantification type. + :type quantification: QuantMeasure + :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_aligned_feature_fold_change_table_experimental_serialize( + project_id=project_id, + aggregation=aggregation, + quantification=quantification, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "StatisticsTable", + } + 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_aligned_feature_fold_change_table_experimental_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aggregation: Annotated[Optional[AggregationType], Field(description="aggregation type.")] = None, + quantification: Annotated[Optional[QuantMeasure], Field(description="quantification type.")] = 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: + """[EXPERIMENTAL] Get table of all fold changes in the project space + + [EXPERIMENTAL] Get table of all fold changes in the project space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aggregation: aggregation type. + :type aggregation: AggregationType + :param quantification: quantification type. + :type quantification: QuantMeasure + :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_aligned_feature_fold_change_table_experimental_serialize( + project_id=project_id, + aggregation=aggregation, + quantification=quantification, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "StatisticsTable", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_aligned_feature_fold_change_table_experimental_serialize( + self, + project_id, + aggregation, + quantification, + _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, str] = {} + _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 aggregation is not None: + + _query_params.append(('aggregation', aggregation.value)) + + if quantification is not None: + + _query_params.append(('quantification', quantification.value)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/aligned-features/statistics/foldchanges/stats-table', + 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_fold_changes_by_aligned_feature_experimental( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + object_id: Annotated[StrictStr, Field(description="id of the object the fold changes are assigned 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, + ) -> List[FoldChange]: + """[EXPERIMENTAL] List all fold changes that are associated with an object + + [EXPERIMENTAL] List all fold changes that are associated with an object.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param object_id: id of the object the fold changes are assigned to. (required) + :type object_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._get_fold_changes_by_aligned_feature_experimental_serialize( + project_id=project_id, + object_id=object_id, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[FoldChange]", + } + 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_fold_changes_by_aligned_feature_experimental_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + object_id: Annotated[StrictStr, Field(description="id of the object the fold changes are assigned 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[List[FoldChange]]: + """[EXPERIMENTAL] List all fold changes that are associated with an object + + [EXPERIMENTAL] List all fold changes that are associated with an object.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param object_id: id of the object the fold changes are assigned to. (required) + :type object_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._get_fold_changes_by_aligned_feature_experimental_serialize( + project_id=project_id, + object_id=object_id, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[FoldChange]", + } + 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_fold_changes_by_aligned_feature_experimental_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + object_id: Annotated[StrictStr, Field(description="id of the object the fold changes are assigned 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: + """[EXPERIMENTAL] List all fold changes that are associated with an object + + [EXPERIMENTAL] List all fold changes that are associated with an object.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param object_id: id of the object the fold changes are assigned to. (required) + :type object_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._get_fold_changes_by_aligned_feature_experimental_serialize( + project_id=project_id, + object_id=object_id, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[FoldChange]", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_fold_changes_by_aligned_feature_experimental_serialize( + self, + project_id, + object_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, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + if object_id is not None: + _path_params['objectId'] = object_id + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/aligned-features/statistics/foldchanges/{objectId}', + 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/api/features_api.py b/client-api_python/generated/PySirius/api/features_api.py index d0972dfc..653dd507 100644 --- a/client-api_python/generated/PySirius/api/features_api.py +++ b/client-api_python/generated/PySirius/api/features_api.py @@ -37,14 +37,15 @@ from PySirius.models.paged_model_spectral_library_match import PagedModelSpectralLibraryMatch from PySirius.models.paged_model_structure_candidate_formula import PagedModelStructureCandidateFormula from PySirius.models.paged_model_structure_candidate_scored import PagedModelStructureCandidateScored -from PySirius.models.quantification_measure import QuantificationMeasure -from PySirius.models.quantification_table_experimental import QuantificationTableExperimental +from PySirius.models.quant_measure import QuantMeasure +from PySirius.models.quant_table_experimental import QuantTableExperimental from PySirius.models.spectral_library_match import SpectralLibraryMatch from PySirius.models.spectral_library_match_opt_field import SpectralLibraryMatchOptField from PySirius.models.spectral_library_match_summary import SpectralLibraryMatchSummary from PySirius.models.structure_candidate_formula import StructureCandidateFormula from PySirius.models.structure_candidate_opt_field import StructureCandidateOptField from PySirius.models.structure_candidate_scored import StructureCandidateScored +from PySirius.models.tag import Tag from PySirius.models.trace_set_experimental import TraceSetExperimental from PySirius.api_client import ApiClient, RequestSerialized @@ -71,7 +72,7 @@ def add_aligned_features( project_id: Annotated[StrictStr, Field(description="project-space to import into.")], feature_import: Annotated[List[FeatureImport], Field(description="the feature data to be imported")], profile: Annotated[Optional[InstrumentProfile], Field(description="profile describing the instrument used to measure the data. Used to merge spectra.")] = None, - opt_fields: Annotated[Optional[List[Optional[AlignedFeatureOptField]]], Field(description="set of optional fields to be included. Use 'none' to override defaults.")] = None, + opt_fields: Annotated[Optional[List[AlignedFeatureOptField]], Field(description="set of optional fields to be included. Use 'none' to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -150,7 +151,7 @@ def add_aligned_features_with_http_info( project_id: Annotated[StrictStr, Field(description="project-space to import into.")], feature_import: Annotated[List[FeatureImport], Field(description="the feature data to be imported")], profile: Annotated[Optional[InstrumentProfile], Field(description="profile describing the instrument used to measure the data. Used to merge spectra.")] = None, - opt_fields: Annotated[Optional[List[Optional[AlignedFeatureOptField]]], Field(description="set of optional fields to be included. Use 'none' to override defaults.")] = None, + opt_fields: Annotated[Optional[List[AlignedFeatureOptField]], Field(description="set of optional fields to be included. Use 'none' to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -229,7 +230,7 @@ def add_aligned_features_without_preload_content( project_id: Annotated[StrictStr, Field(description="project-space to import into.")], feature_import: Annotated[List[FeatureImport], Field(description="the feature data to be imported")], profile: Annotated[Optional[InstrumentProfile], Field(description="profile describing the instrument used to measure the data. Used to merge spectra.")] = None, - opt_fields: Annotated[Optional[List[Optional[AlignedFeatureOptField]]], Field(description="set of optional fields to be included. Use 'none' to override defaults.")] = None, + opt_fields: Annotated[Optional[List[AlignedFeatureOptField]], Field(description="set of optional fields to be included. Use 'none' to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -387,10 +388,11 @@ def _add_aligned_features_serialize( @validate_call - def delete_aligned_feature( + def add_de_novo_structure_candidate( self, - project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="identifier of feature (aligned over runs) to delete.")], + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + smiles: Annotated[Optional[StrictStr], Field(description="smiles")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -403,15 +405,17 @@ def delete_aligned_feature( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> None: - """Delete feature (aligned over runs) with the given identifier from the specified project-space. + ) -> List[StructureCandidateFormula]: + """[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. - Delete feature (aligned over runs) with the given identifier from the specified project-space. + [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. - :param project_id: project-space to delete from. (required) + :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: identifier of feature (aligned over runs) to delete. (required) + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) :type aligned_feature_id: str + :param smiles: smiles + :type smiles: 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 @@ -434,9 +438,10 @@ def delete_aligned_feature( :return: Returns the result object. """ # noqa: E501 - _param = self._delete_aligned_feature_serialize( + _param = self._add_de_novo_structure_candidate_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, + smiles=smiles, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -444,7 +449,7 @@ def delete_aligned_feature( ) _response_types_map: Dict[str, Optional[str]] = { - '200': None, + '200': "List[StructureCandidateFormula]", } response_data = self.api_client.call_api( *_param, @@ -458,10 +463,11 @@ def delete_aligned_feature( @validate_call - def delete_aligned_feature_with_http_info( + def add_de_novo_structure_candidate_with_http_info( self, - project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="identifier of feature (aligned over runs) to delete.")], + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + smiles: Annotated[Optional[StrictStr], Field(description="smiles")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -474,15 +480,17 @@ def delete_aligned_feature_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[None]: - """Delete feature (aligned over runs) with the given identifier from the specified project-space. + ) -> ApiResponse[List[StructureCandidateFormula]]: + """[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. - Delete feature (aligned over runs) with the given identifier from the specified project-space. + [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. - :param project_id: project-space to delete from. (required) + :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: identifier of feature (aligned over runs) to delete. (required) + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) :type aligned_feature_id: str + :param smiles: smiles + :type smiles: 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 @@ -505,9 +513,10 @@ def delete_aligned_feature_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._delete_aligned_feature_serialize( + _param = self._add_de_novo_structure_candidate_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, + smiles=smiles, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -515,7 +524,7 @@ def delete_aligned_feature_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': None, + '200': "List[StructureCandidateFormula]", } response_data = self.api_client.call_api( *_param, @@ -529,10 +538,11 @@ def delete_aligned_feature_with_http_info( @validate_call - def delete_aligned_feature_without_preload_content( + def add_de_novo_structure_candidate_without_preload_content( self, - project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="identifier of feature (aligned over runs) to delete.")], + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + smiles: Annotated[Optional[StrictStr], Field(description="smiles")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -546,14 +556,16 @@ def delete_aligned_feature_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Delete feature (aligned over runs) with the given identifier from the specified project-space. + """[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. - Delete feature (aligned over runs) with the given identifier from the specified project-space. + [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. - :param project_id: project-space to delete from. (required) + :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: identifier of feature (aligned over runs) to delete. (required) + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) :type aligned_feature_id: str + :param smiles: smiles + :type smiles: 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 @@ -576,9 +588,10 @@ def delete_aligned_feature_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._delete_aligned_feature_serialize( + _param = self._add_de_novo_structure_candidate_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, + smiles=smiles, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -586,7 +599,7 @@ def delete_aligned_feature_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': None, + '200': "List[StructureCandidateFormula]", } response_data = self.api_client.call_api( *_param, @@ -595,10 +608,11 @@ def delete_aligned_feature_without_preload_content( return response_data.response - def _delete_aligned_feature_serialize( + def _add_de_novo_structure_candidate_serialize( self, project_id, aligned_feature_id, + smiles, _request_auth, _content_type, _headers, @@ -623,11 +637,21 @@ def _delete_aligned_feature_serialize( if aligned_feature_id is not None: _path_params['alignedFeatureId'] = aligned_feature_id # process the query parameters + if smiles is not None: + + _query_params.append(('smiles', smiles)) + # process the header parameters # process the form parameters # process the body parameter + # set the HTTP header `Accept` + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) # authentication setting @@ -635,8 +659,8 @@ def _delete_aligned_feature_serialize( ] return self.api_client.param_serialize( - method='DELETE', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}', + method='PUT', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -653,10 +677,11 @@ def _delete_aligned_feature_serialize( @validate_call - def delete_aligned_features( + def add_tags_to_aligned_feature_experimental( self, - project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], - request_body: List[StrictStr], + project_id: Annotated[StrictStr, Field(description="project-space to add to.")], + aligned_feature_id: Annotated[StrictStr, Field(description="run to add tags to.")], + tag: Annotated[List[Tag], Field(description="tags to add.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -669,15 +694,17 @@ def delete_aligned_features( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> None: - """Delete feature (aligned over runs) with the given identifier from the specified project-space. + ) -> List[Tag]: + """[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project - Delete feature (aligned over runs) with the given identifier from the specified project-space. + [EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project. Tags with the same name will be overwritten.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. - :param project_id: project-space to delete from. (required) + :param project_id: project-space to add to. (required) :type project_id: str - :param request_body: (required) - :type request_body: List[str] + :param aligned_feature_id: run to add tags to. (required) + :type aligned_feature_id: str + :param tag: tags to add. (required) + :type tag: List[Tag] :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 @@ -700,9 +727,10 @@ def delete_aligned_features( :return: Returns the result object. """ # noqa: E501 - _param = self._delete_aligned_features_serialize( + _param = self._add_tags_to_aligned_feature_experimental_serialize( project_id=project_id, - request_body=request_body, + aligned_feature_id=aligned_feature_id, + tag=tag, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -710,7 +738,7 @@ def delete_aligned_features( ) _response_types_map: Dict[str, Optional[str]] = { - '200': None, + '200': "List[Tag]", } response_data = self.api_client.call_api( *_param, @@ -724,10 +752,11 @@ def delete_aligned_features( @validate_call - def delete_aligned_features_with_http_info( + def add_tags_to_aligned_feature_experimental_with_http_info( self, - project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], - request_body: List[StrictStr], + project_id: Annotated[StrictStr, Field(description="project-space to add to.")], + aligned_feature_id: Annotated[StrictStr, Field(description="run to add tags to.")], + tag: Annotated[List[Tag], Field(description="tags to add.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -740,15 +769,17 @@ def delete_aligned_features_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[None]: - """Delete feature (aligned over runs) with the given identifier from the specified project-space. + ) -> ApiResponse[List[Tag]]: + """[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project - Delete feature (aligned over runs) with the given identifier from the specified project-space. + [EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project. Tags with the same name will be overwritten.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. - :param project_id: project-space to delete from. (required) + :param project_id: project-space to add to. (required) :type project_id: str - :param request_body: (required) - :type request_body: List[str] + :param aligned_feature_id: run to add tags to. (required) + :type aligned_feature_id: str + :param tag: tags to add. (required) + :type tag: List[Tag] :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 @@ -771,9 +802,10 @@ def delete_aligned_features_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._delete_aligned_features_serialize( + _param = self._add_tags_to_aligned_feature_experimental_serialize( project_id=project_id, - request_body=request_body, + aligned_feature_id=aligned_feature_id, + tag=tag, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -781,7 +813,7 @@ def delete_aligned_features_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': None, + '200': "List[Tag]", } response_data = self.api_client.call_api( *_param, @@ -795,10 +827,11 @@ def delete_aligned_features_with_http_info( @validate_call - def delete_aligned_features_without_preload_content( + def add_tags_to_aligned_feature_experimental_without_preload_content( self, - project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], - request_body: List[StrictStr], + project_id: Annotated[StrictStr, Field(description="project-space to add to.")], + aligned_feature_id: Annotated[StrictStr, Field(description="run to add tags to.")], + tag: Annotated[List[Tag], Field(description="tags to add.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -812,14 +845,16 @@ def delete_aligned_features_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Delete feature (aligned over runs) with the given identifier from the specified project-space. + """[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project - Delete feature (aligned over runs) with the given identifier from the specified project-space. + [EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project. Tags with the same name will be overwritten.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. - :param project_id: project-space to delete from. (required) + :param project_id: project-space to add to. (required) :type project_id: str - :param request_body: (required) - :type request_body: List[str] + :param aligned_feature_id: run to add tags to. (required) + :type aligned_feature_id: str + :param tag: tags to add. (required) + :type tag: List[Tag] :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 @@ -842,9 +877,10 @@ def delete_aligned_features_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._delete_aligned_features_serialize( + _param = self._add_tags_to_aligned_feature_experimental_serialize( project_id=project_id, - request_body=request_body, + aligned_feature_id=aligned_feature_id, + tag=tag, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -852,7 +888,7 @@ def delete_aligned_features_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': None, + '200': "List[Tag]", } response_data = self.api_client.call_api( *_param, @@ -861,10 +897,11 @@ def delete_aligned_features_without_preload_content( return response_data.response - def _delete_aligned_features_serialize( + def _add_tags_to_aligned_feature_experimental_serialize( self, project_id, - request_body, + aligned_feature_id, + tag, _request_auth, _content_type, _headers, @@ -874,7 +911,7 @@ def _delete_aligned_features_serialize( _host = None _collection_formats: Dict[str, str] = { - 'request_body': '', + 'Tag': '', } _path_params: Dict[str, str] = {} @@ -887,14 +924,22 @@ def _delete_aligned_features_serialize( # process the path parameters if project_id is not None: _path_params['projectId'] = project_id + if aligned_feature_id is not None: + _path_params['alignedFeatureId'] = aligned_feature_id # process the query parameters # process the header parameters # process the form parameters # process the body parameter - if request_body is not None: - _body_params = request_body + if tag is not None: + _body_params = tag + # set the HTTP header `Accept` + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) # set the HTTP header `Content-Type` if _content_type: @@ -916,7 +961,7 @@ def _delete_aligned_features_serialize( return self.api_client.param_serialize( method='PUT', - resource_path='/api/projects/{projectId}/aligned-features/delete', + resource_path='/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -933,10 +978,10 @@ def _delete_aligned_features_serialize( @validate_call - def get_adduct_network_with_merged_traces_experimental( + def delete_aligned_feature( self, - project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="one feature that is considered the main feature of the adduct network")], + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="identifier of feature (aligned over runs) to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -949,14 +994,14 @@ def get_adduct_network_with_merged_traces_experimental( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> TraceSetExperimental: - """EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + ) -> None: + """Delete feature (aligned over runs) with the given identifier from the specified project-space. - Returns the adduct network for a given aligned feature id together with all merged traces contained in the network. + Delete feature (aligned over runs) with the given identifier from the specified project-space. - :param project_id: project-space to read from. (required) + :param project_id: project-space to delete from. (required) :type project_id: str - :param aligned_feature_id: one feature that is considered the main feature of the adduct network (required) + :param aligned_feature_id: identifier of feature (aligned over runs) to delete. (required) :type aligned_feature_id: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -980,7 +1025,7 @@ def get_adduct_network_with_merged_traces_experimental( :return: Returns the result object. """ # noqa: E501 - _param = self._get_adduct_network_with_merged_traces_experimental_serialize( + _param = self._delete_aligned_feature_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, _request_auth=_request_auth, @@ -990,7 +1035,7 @@ def get_adduct_network_with_merged_traces_experimental( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "TraceSetExperimental", + '200': None, } response_data = self.api_client.call_api( *_param, @@ -1004,10 +1049,10 @@ def get_adduct_network_with_merged_traces_experimental( @validate_call - def get_adduct_network_with_merged_traces_experimental_with_http_info( + def delete_aligned_feature_with_http_info( self, - project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="one feature that is considered the main feature of the adduct network")], + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="identifier of feature (aligned over runs) to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1020,14 +1065,14 @@ def get_adduct_network_with_merged_traces_experimental_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[TraceSetExperimental]: - """EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + ) -> ApiResponse[None]: + """Delete feature (aligned over runs) with the given identifier from the specified project-space. - Returns the adduct network for a given aligned feature id together with all merged traces contained in the network. + Delete feature (aligned over runs) with the given identifier from the specified project-space. - :param project_id: project-space to read from. (required) + :param project_id: project-space to delete from. (required) :type project_id: str - :param aligned_feature_id: one feature that is considered the main feature of the adduct network (required) + :param aligned_feature_id: identifier of feature (aligned over runs) to delete. (required) :type aligned_feature_id: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1051,7 +1096,7 @@ def get_adduct_network_with_merged_traces_experimental_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_adduct_network_with_merged_traces_experimental_serialize( + _param = self._delete_aligned_feature_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, _request_auth=_request_auth, @@ -1061,7 +1106,7 @@ def get_adduct_network_with_merged_traces_experimental_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "TraceSetExperimental", + '200': None, } response_data = self.api_client.call_api( *_param, @@ -1075,10 +1120,10 @@ def get_adduct_network_with_merged_traces_experimental_with_http_info( @validate_call - def get_adduct_network_with_merged_traces_experimental_without_preload_content( + def delete_aligned_feature_without_preload_content( self, - project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="one feature that is considered the main feature of the adduct network")], + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="identifier of feature (aligned over runs) to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1092,13 +1137,13 @@ def get_adduct_network_with_merged_traces_experimental_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + """Delete feature (aligned over runs) with the given identifier from the specified project-space. - Returns the adduct network for a given aligned feature id together with all merged traces contained in the network. + Delete feature (aligned over runs) with the given identifier from the specified project-space. - :param project_id: project-space to read from. (required) + :param project_id: project-space to delete from. (required) :type project_id: str - :param aligned_feature_id: one feature that is considered the main feature of the adduct network (required) + :param aligned_feature_id: identifier of feature (aligned over runs) to delete. (required) :type aligned_feature_id: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1122,7 +1167,7 @@ def get_adduct_network_with_merged_traces_experimental_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_adduct_network_with_merged_traces_experimental_serialize( + _param = self._delete_aligned_feature_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, _request_auth=_request_auth, @@ -1132,7 +1177,7 @@ def get_adduct_network_with_merged_traces_experimental_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "TraceSetExperimental", + '200': None, } response_data = self.api_client.call_api( *_param, @@ -1141,7 +1186,7 @@ def get_adduct_network_with_merged_traces_experimental_without_preload_content( return response_data.response - def _get_adduct_network_with_merged_traces_experimental_serialize( + def _delete_aligned_feature_serialize( self, project_id, aligned_feature_id, @@ -1174,12 +1219,6 @@ def _get_adduct_network_with_merged_traces_experimental_serialize( # process the body parameter - # set the HTTP header `Accept` - _header_params['Accept'] = self.api_client.select_header_accept( - [ - 'application/json' - ] - ) # authentication setting @@ -1187,8 +1226,8 @@ def _get_adduct_network_with_merged_traces_experimental_serialize( ] return self.api_client.param_serialize( - method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts', + method='DELETE', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -1205,11 +1244,10 @@ def _get_adduct_network_with_merged_traces_experimental_serialize( @validate_call - def get_aligned_feature( + def delete_aligned_features( self, - project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="identifier of feature (aligned over runs) to access.")], - opt_fields: Annotated[Optional[List[Optional[AlignedFeatureOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + request_body: List[StrictStr], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1222,17 +1260,15 @@ def get_aligned_feature( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> AlignedFeature: - """Get feature (aligned over runs) with the given identifier from the specified project-space. + ) -> None: + """Delete feature (aligned over runs) with the given identifier from the specified project-space. - Get feature (aligned over runs) with the given identifier from the specified project-space. + Delete feature (aligned over runs) with the given identifier from the specified project-space. - :param project_id: project-space to read from. (required) + :param project_id: project-space to delete from. (required) :type project_id: str - :param aligned_feature_id: identifier of feature (aligned over runs) to access. (required) - :type aligned_feature_id: str - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[AlignedFeatureOptField] + :param request_body: (required) + :type request_body: List[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 @@ -1255,10 +1291,9 @@ def get_aligned_feature( :return: Returns the result object. """ # noqa: E501 - _param = self._get_aligned_feature_serialize( + _param = self._delete_aligned_features_serialize( project_id=project_id, - aligned_feature_id=aligned_feature_id, - opt_fields=opt_fields, + request_body=request_body, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1266,7 +1301,7 @@ def get_aligned_feature( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "AlignedFeature", + '200': None, } response_data = self.api_client.call_api( *_param, @@ -1280,11 +1315,10 @@ def get_aligned_feature( @validate_call - def get_aligned_feature_with_http_info( + def delete_aligned_features_with_http_info( self, - project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="identifier of feature (aligned over runs) to access.")], - opt_fields: Annotated[Optional[List[Optional[AlignedFeatureOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + request_body: List[StrictStr], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1297,17 +1331,15 @@ def get_aligned_feature_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[AlignedFeature]: - """Get feature (aligned over runs) with the given identifier from the specified project-space. + ) -> ApiResponse[None]: + """Delete feature (aligned over runs) with the given identifier from the specified project-space. - Get feature (aligned over runs) with the given identifier from the specified project-space. + Delete feature (aligned over runs) with the given identifier from the specified project-space. - :param project_id: project-space to read from. (required) + :param project_id: project-space to delete from. (required) :type project_id: str - :param aligned_feature_id: identifier of feature (aligned over runs) to access. (required) - :type aligned_feature_id: str - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[AlignedFeatureOptField] + :param request_body: (required) + :type request_body: List[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 @@ -1330,10 +1362,9 @@ def get_aligned_feature_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_aligned_feature_serialize( + _param = self._delete_aligned_features_serialize( project_id=project_id, - aligned_feature_id=aligned_feature_id, - opt_fields=opt_fields, + request_body=request_body, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1341,7 +1372,7 @@ def get_aligned_feature_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "AlignedFeature", + '200': None, } response_data = self.api_client.call_api( *_param, @@ -1355,11 +1386,10 @@ def get_aligned_feature_with_http_info( @validate_call - def get_aligned_feature_without_preload_content( + def delete_aligned_features_without_preload_content( self, - project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="identifier of feature (aligned over runs) to access.")], - opt_fields: Annotated[Optional[List[Optional[AlignedFeatureOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + request_body: List[StrictStr], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1373,16 +1403,14 @@ def get_aligned_feature_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Get feature (aligned over runs) with the given identifier from the specified project-space. + """Delete feature (aligned over runs) with the given identifier from the specified project-space. - Get feature (aligned over runs) with the given identifier from the specified project-space. + Delete feature (aligned over runs) with the given identifier from the specified project-space. - :param project_id: project-space to read from. (required) + :param project_id: project-space to delete from. (required) :type project_id: str - :param aligned_feature_id: identifier of feature (aligned over runs) to access. (required) - :type aligned_feature_id: str - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[AlignedFeatureOptField] + :param request_body: (required) + :type request_body: List[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 @@ -1405,10 +1433,9 @@ def get_aligned_feature_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_aligned_feature_serialize( + _param = self._delete_aligned_features_serialize( project_id=project_id, - aligned_feature_id=aligned_feature_id, - opt_fields=opt_fields, + request_body=request_body, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1416,7 +1443,7 @@ def get_aligned_feature_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "AlignedFeature", + '200': None, } response_data = self.api_client.call_api( *_param, @@ -1425,11 +1452,10 @@ def get_aligned_feature_without_preload_content( return response_data.response - def _get_aligned_feature_serialize( + def _delete_aligned_features_serialize( self, project_id, - aligned_feature_id, - opt_fields, + request_body, _request_auth, _content_type, _headers, @@ -1439,7 +1465,7 @@ def _get_aligned_feature_serialize( _host = None _collection_formats: Dict[str, str] = { - 'optFields': 'multi', + 'request_body': '', } _path_params: Dict[str, str] = {} @@ -1452,33 +1478,36 @@ def _get_aligned_feature_serialize( # process the path parameters if project_id is not None: _path_params['projectId'] = project_id - if aligned_feature_id is not None: - _path_params['alignedFeatureId'] = aligned_feature_id # process the query parameters - if opt_fields is not None: - - _query_params.append(('optFields', opt_fields)) - # process the header parameters # process the form parameters # process the body parameter + if request_body is not None: + _body_params = request_body - # set the HTTP header `Accept` - _header_params['Accept'] = self.api_client.select_header_accept( - [ - 'application/json' - ] - ) + # set the HTTP header `Content-Type` + if _content_type: + _header_params['Content-Type'] = _content_type + else: + _default_content_type = ( + self.api_client.select_header_content_type( + [ + 'application/json' + ] + ) + ) + if _default_content_type is not None: + _header_params['Content-Type'] = _default_content_type # authentication setting _auth_settings: List[str] = [ ] return self.api_client.param_serialize( - method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}', + method='PUT', + resource_path='/api/projects/{projectId}/aligned-features/delete', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -1495,10 +1524,10 @@ def _get_aligned_feature_serialize( @validate_call - def get_aligned_features( + def get_adduct_network_with_merged_traces_experimental( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - opt_fields: Annotated[Optional[List[Optional[AlignedFeatureOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="one feature that is considered the main feature of the adduct network")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1511,15 +1540,15 @@ def get_aligned_features( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> List[AlignedFeature]: - """Get all available features (aligned over runs) in the given project-space. + ) -> TraceSetExperimental: + """[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network - Get all available features (aligned over runs) in the given project-space. + [EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. :param project_id: project-space to read from. (required) :type project_id: str - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[AlignedFeatureOptField] + :param aligned_feature_id: one feature that is considered the main feature of the adduct network (required) + :type aligned_feature_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 @@ -1542,9 +1571,9 @@ def get_aligned_features( :return: Returns the result object. """ # noqa: E501 - _param = self._get_aligned_features_serialize( + _param = self._get_adduct_network_with_merged_traces_experimental_serialize( project_id=project_id, - opt_fields=opt_fields, + aligned_feature_id=aligned_feature_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1552,7 +1581,7 @@ def get_aligned_features( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[AlignedFeature]", + '200': "TraceSetExperimental", } response_data = self.api_client.call_api( *_param, @@ -1566,10 +1595,10 @@ def get_aligned_features( @validate_call - def get_aligned_features_with_http_info( + def get_adduct_network_with_merged_traces_experimental_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - opt_fields: Annotated[Optional[List[Optional[AlignedFeatureOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="one feature that is considered the main feature of the adduct network")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1582,15 +1611,15 @@ def get_aligned_features_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[List[AlignedFeature]]: - """Get all available features (aligned over runs) in the given project-space. + ) -> ApiResponse[TraceSetExperimental]: + """[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network - Get all available features (aligned over runs) in the given project-space. + [EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. :param project_id: project-space to read from. (required) :type project_id: str - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[AlignedFeatureOptField] + :param aligned_feature_id: one feature that is considered the main feature of the adduct network (required) + :type aligned_feature_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 @@ -1613,9 +1642,9 @@ def get_aligned_features_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_aligned_features_serialize( + _param = self._get_adduct_network_with_merged_traces_experimental_serialize( project_id=project_id, - opt_fields=opt_fields, + aligned_feature_id=aligned_feature_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1623,7 +1652,7 @@ def get_aligned_features_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[AlignedFeature]", + '200': "TraceSetExperimental", } response_data = self.api_client.call_api( *_param, @@ -1637,10 +1666,10 @@ def get_aligned_features_with_http_info( @validate_call - def get_aligned_features_without_preload_content( + def get_adduct_network_with_merged_traces_experimental_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - opt_fields: Annotated[Optional[List[Optional[AlignedFeatureOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="one feature that is considered the main feature of the adduct network")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1654,14 +1683,14 @@ def get_aligned_features_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Get all available features (aligned over runs) in the given project-space. + """[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network - Get all available features (aligned over runs) in the given project-space. + [EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. :param project_id: project-space to read from. (required) :type project_id: str - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[AlignedFeatureOptField] + :param aligned_feature_id: one feature that is considered the main feature of the adduct network (required) + :type aligned_feature_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 @@ -1684,9 +1713,9 @@ def get_aligned_features_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_aligned_features_serialize( + _param = self._get_adduct_network_with_merged_traces_experimental_serialize( project_id=project_id, - opt_fields=opt_fields, + aligned_feature_id=aligned_feature_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1694,7 +1723,7 @@ def get_aligned_features_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[AlignedFeature]", + '200': "TraceSetExperimental", } response_data = self.api_client.call_api( *_param, @@ -1703,10 +1732,10 @@ def get_aligned_features_without_preload_content( return response_data.response - def _get_aligned_features_serialize( + def _get_adduct_network_with_merged_traces_experimental_serialize( self, project_id, - opt_fields, + aligned_feature_id, _request_auth, _content_type, _headers, @@ -1716,7 +1745,6 @@ def _get_aligned_features_serialize( _host = None _collection_formats: Dict[str, str] = { - 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -1729,11 +1757,9 @@ def _get_aligned_features_serialize( # process the path parameters if project_id is not None: _path_params['projectId'] = project_id + if aligned_feature_id is not None: + _path_params['alignedFeatureId'] = aligned_feature_id # process the query parameters - if opt_fields is not None: - - _query_params.append(('optFields', opt_fields)) - # process the header parameters # process the form parameters # process the body parameter @@ -1753,7 +1779,7 @@ def _get_aligned_features_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -1770,13 +1796,12 @@ def _get_aligned_features_serialize( @validate_call - def get_aligned_features_paged( + def get_aligned_feature( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[AlignedFeatureOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="identifier of feature (aligned over runs) to access.")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[AlignedFeatureOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1789,19 +1814,17 @@ def get_aligned_features_paged( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> PagedModelAlignedFeature: - """Get all available features (aligned over runs) in the given project-space. + ) -> AlignedFeature: + """Get feature (aligned over runs) with the given identifier from the specified project-space. - Get all available features (aligned over runs) in the given project-space. + Get feature (aligned over runs) with the given identifier from the specified project-space. :param project_id: project-space to read from. (required) :type project_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] + :param aligned_feature_id: identifier of feature (aligned over runs) to access. (required) + :type aligned_feature_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. :type opt_fields: List[AlignedFeatureOptField] :param _request_timeout: timeout setting for this request. If one @@ -1826,11 +1849,10 @@ def get_aligned_features_paged( :return: Returns the result object. """ # noqa: E501 - _param = self._get_aligned_features_paged_serialize( + _param = self._get_aligned_feature_serialize( project_id=project_id, - page=page, - size=size, - sort=sort, + aligned_feature_id=aligned_feature_id, + ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, @@ -1839,7 +1861,7 @@ def get_aligned_features_paged( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelAlignedFeature", + '200': "AlignedFeature", } response_data = self.api_client.call_api( *_param, @@ -1853,13 +1875,12 @@ def get_aligned_features_paged( @validate_call - def get_aligned_features_paged_with_http_info( + def get_aligned_feature_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[AlignedFeatureOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="identifier of feature (aligned over runs) to access.")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[AlignedFeatureOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1872,19 +1893,17 @@ def get_aligned_features_paged_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[PagedModelAlignedFeature]: - """Get all available features (aligned over runs) in the given project-space. + ) -> ApiResponse[AlignedFeature]: + """Get feature (aligned over runs) with the given identifier from the specified project-space. - Get all available features (aligned over runs) in the given project-space. + Get feature (aligned over runs) with the given identifier from the specified project-space. :param project_id: project-space to read from. (required) :type project_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] + :param aligned_feature_id: identifier of feature (aligned over runs) to access. (required) + :type aligned_feature_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. :type opt_fields: List[AlignedFeatureOptField] :param _request_timeout: timeout setting for this request. If one @@ -1909,11 +1928,10 @@ def get_aligned_features_paged_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_aligned_features_paged_serialize( + _param = self._get_aligned_feature_serialize( project_id=project_id, - page=page, - size=size, - sort=sort, + aligned_feature_id=aligned_feature_id, + ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, @@ -1922,7 +1940,7 @@ def get_aligned_features_paged_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelAlignedFeature", + '200': "AlignedFeature", } response_data = self.api_client.call_api( *_param, @@ -1936,13 +1954,12 @@ def get_aligned_features_paged_with_http_info( @validate_call - def get_aligned_features_paged_without_preload_content( + def get_aligned_feature_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[AlignedFeatureOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="identifier of feature (aligned over runs) to access.")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[AlignedFeatureOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1956,18 +1973,16 @@ def get_aligned_features_paged_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Get all available features (aligned over runs) in the given project-space. + """Get feature (aligned over runs) with the given identifier from the specified project-space. - Get all available features (aligned over runs) in the given project-space. + Get feature (aligned over runs) with the given identifier from the specified project-space. :param project_id: project-space to read from. (required) :type project_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] + :param aligned_feature_id: identifier of feature (aligned over runs) to access. (required) + :type aligned_feature_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. :type opt_fields: List[AlignedFeatureOptField] :param _request_timeout: timeout setting for this request. If one @@ -1992,11 +2007,10 @@ def get_aligned_features_paged_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_aligned_features_paged_serialize( + _param = self._get_aligned_feature_serialize( project_id=project_id, - page=page, - size=size, - sort=sort, + aligned_feature_id=aligned_feature_id, + ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, @@ -2005,7 +2019,7 @@ def get_aligned_features_paged_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelAlignedFeature", + '200': "AlignedFeature", } response_data = self.api_client.call_api( *_param, @@ -2014,12 +2028,11 @@ def get_aligned_features_paged_without_preload_content( return response_data.response - def _get_aligned_features_paged_serialize( + def _get_aligned_feature_serialize( self, project_id, - page, - size, - sort, + aligned_feature_id, + ms_data_search_prepared, opt_fields, _request_auth, _content_type, @@ -2030,7 +2043,6 @@ def _get_aligned_features_paged_serialize( _host = None _collection_formats: Dict[str, str] = { - 'sort': 'multi', 'optFields': 'multi', } @@ -2044,18 +2056,12 @@ def _get_aligned_features_paged_serialize( # process the path parameters if project_id is not None: _path_params['projectId'] = project_id + if aligned_feature_id is not None: + _path_params['alignedFeatureId'] = aligned_feature_id # process the query parameters - if page is not None: - - _query_params.append(('page', page)) - - if size is not None: - - _query_params.append(('size', size)) + if ms_data_search_prepared is not None: - if sort is not None: - - _query_params.append(('sort', sort)) + _query_params.append(('msDataSearchPrepared', ms_data_search_prepared)) if opt_fields is not None: @@ -2080,7 +2086,7 @@ def _get_aligned_features_paged_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/page', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -2097,7 +2103,7 @@ def _get_aligned_features_paged_serialize( @validate_call - def get_aligned_features_quality_experimental( + def get_aligned_feature_quality_experimental( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="identifier of feature (aligned over runs) to access.")], @@ -2114,9 +2120,9 @@ def get_aligned_features_quality_experimental( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> AlignedFeatureQualityExperimental: - """EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + """[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId) - Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space. + [EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)
Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. :param project_id: project-space to read from. (required) :type project_id: str @@ -2144,7 +2150,7 @@ def get_aligned_features_quality_experimental( :return: Returns the result object. """ # noqa: E501 - _param = self._get_aligned_features_quality_experimental_serialize( + _param = self._get_aligned_feature_quality_experimental_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, _request_auth=_request_auth, @@ -2168,7 +2174,7 @@ def get_aligned_features_quality_experimental( @validate_call - def get_aligned_features_quality_experimental_with_http_info( + def get_aligned_feature_quality_experimental_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="identifier of feature (aligned over runs) to access.")], @@ -2185,9 +2191,9 @@ def get_aligned_features_quality_experimental_with_http_info( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> ApiResponse[AlignedFeatureQualityExperimental]: - """EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + """[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId) - Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space. + [EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)
Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. :param project_id: project-space to read from. (required) :type project_id: str @@ -2215,7 +2221,7 @@ def get_aligned_features_quality_experimental_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_aligned_features_quality_experimental_serialize( + _param = self._get_aligned_feature_quality_experimental_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, _request_auth=_request_auth, @@ -2239,7 +2245,7 @@ def get_aligned_features_quality_experimental_with_http_info( @validate_call - def get_aligned_features_quality_experimental_without_preload_content( + def get_aligned_feature_quality_experimental_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="identifier of feature (aligned over runs) to access.")], @@ -2256,9 +2262,9 @@ def get_aligned_features_quality_experimental_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + """[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId) - Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space. + [EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)
Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. :param project_id: project-space to read from. (required) :type project_id: str @@ -2286,7 +2292,7 @@ def get_aligned_features_quality_experimental_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_aligned_features_quality_experimental_serialize( + _param = self._get_aligned_feature_quality_experimental_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, _request_auth=_request_auth, @@ -2305,7 +2311,7 @@ def get_aligned_features_quality_experimental_without_preload_content( return response_data.response - def _get_aligned_features_quality_experimental_serialize( + def _get_aligned_feature_quality_experimental_serialize( self, project_id, aligned_feature_id, @@ -2369,11 +2375,11 @@ def _get_aligned_features_quality_experimental_serialize( @validate_call - def get_best_matching_compound_classes( + def get_aligned_features( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[AlignedFeatureOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2386,17 +2392,17 @@ def get_best_matching_compound_classes( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> CompoundClasses: - """Best matching compound classes, Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, + ) -> List[AlignedFeature]: + """Get all available features (aligned over runs) in the given project-space. - Best matching compound classes, Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, + Get all available features (aligned over runs) in the given project-space. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) - :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[AlignedFeatureOptField] :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 @@ -2419,10 +2425,10 @@ def get_best_matching_compound_classes( :return: Returns the result object. """ # noqa: E501 - _param = self._get_best_matching_compound_classes_serialize( + _param = self._get_aligned_features_serialize( project_id=project_id, - aligned_feature_id=aligned_feature_id, - formula_id=formula_id, + ms_data_search_prepared=ms_data_search_prepared, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -2430,7 +2436,7 @@ def get_best_matching_compound_classes( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "CompoundClasses", + '200': "List[AlignedFeature]", } response_data = self.api_client.call_api( *_param, @@ -2444,11 +2450,11 @@ def get_best_matching_compound_classes( @validate_call - def get_best_matching_compound_classes_with_http_info( + def get_aligned_features_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[AlignedFeatureOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2461,17 +2467,17 @@ def get_best_matching_compound_classes_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[CompoundClasses]: - """Best matching compound classes, Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, + ) -> ApiResponse[List[AlignedFeature]]: + """Get all available features (aligned over runs) in the given project-space. - Best matching compound classes, Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, + Get all available features (aligned over runs) in the given project-space. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) - :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[AlignedFeatureOptField] :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 @@ -2494,10 +2500,10 @@ def get_best_matching_compound_classes_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_best_matching_compound_classes_serialize( + _param = self._get_aligned_features_serialize( project_id=project_id, - aligned_feature_id=aligned_feature_id, - formula_id=formula_id, + ms_data_search_prepared=ms_data_search_prepared, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -2505,7 +2511,7 @@ def get_best_matching_compound_classes_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "CompoundClasses", + '200': "List[AlignedFeature]", } response_data = self.api_client.call_api( *_param, @@ -2519,11 +2525,11 @@ def get_best_matching_compound_classes_with_http_info( @validate_call - def get_best_matching_compound_classes_without_preload_content( + def get_aligned_features_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[AlignedFeatureOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2537,16 +2543,16 @@ def get_best_matching_compound_classes_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Best matching compound classes, Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, + """Get all available features (aligned over runs) in the given project-space. - Best matching compound classes, Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, + Get all available features (aligned over runs) in the given project-space. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) - :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[AlignedFeatureOptField] :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 @@ -2569,10 +2575,10 @@ def get_best_matching_compound_classes_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_best_matching_compound_classes_serialize( + _param = self._get_aligned_features_serialize( project_id=project_id, - aligned_feature_id=aligned_feature_id, - formula_id=formula_id, + ms_data_search_prepared=ms_data_search_prepared, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -2580,7 +2586,7 @@ def get_best_matching_compound_classes_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "CompoundClasses", + '200': "List[AlignedFeature]", } response_data = self.api_client.call_api( *_param, @@ -2589,11 +2595,11 @@ def get_best_matching_compound_classes_without_preload_content( return response_data.response - def _get_best_matching_compound_classes_serialize( + def _get_aligned_features_serialize( self, project_id, - aligned_feature_id, - formula_id, + ms_data_search_prepared, + opt_fields, _request_auth, _content_type, _headers, @@ -2603,6 +2609,7 @@ def _get_best_matching_compound_classes_serialize( _host = None _collection_formats: Dict[str, str] = { + 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -2615,11 +2622,15 @@ def _get_best_matching_compound_classes_serialize( # process the path parameters if project_id is not None: _path_params['projectId'] = project_id - if aligned_feature_id is not None: - _path_params['alignedFeatureId'] = aligned_feature_id - if formula_id is not None: - _path_params['formulaId'] = formula_id # process the query parameters + if ms_data_search_prepared is not None: + + _query_params.append(('msDataSearchPrepared', ms_data_search_prepared)) + + if opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) + # process the header parameters # process the form parameters # process the body parameter @@ -2639,7 +2650,7 @@ def _get_best_matching_compound_classes_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes', + resource_path='/api/projects/{projectId}/aligned-features', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -2656,11 +2667,14 @@ def _get_best_matching_compound_classes_serialize( @validate_call - def get_canopus_prediction( + def get_aligned_features_by_group_experimental( self, - project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + group_name: Annotated[StrictStr, Field(description="tag group name.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[AlignedFeatureOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2673,17 +2687,23 @@ def get_canopus_prediction( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> CanopusPrediction: - """All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities, + ) -> PagedModelAlignedFeature: + """[EXPERIMENTAL] Get features (aligned over runs) by tag group - All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities, + [EXPERIMENTAL] Get features (aligned over runs) by tag group.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. - :param project_id: project-space to read from. (required) + :param project_id: project-space to delete from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) - :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str + :param group_name: tag group name. (required) + :type group_name: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[AlignedFeatureOptField] :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 @@ -2706,10 +2726,13 @@ def get_canopus_prediction( :return: Returns the result object. """ # noqa: E501 - _param = self._get_canopus_prediction_serialize( + _param = self._get_aligned_features_by_group_experimental_serialize( project_id=project_id, - aligned_feature_id=aligned_feature_id, - formula_id=formula_id, + group_name=group_name, + page=page, + size=size, + sort=sort, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -2717,7 +2740,7 @@ def get_canopus_prediction( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "CanopusPrediction", + '200': "PagedModelAlignedFeature", } response_data = self.api_client.call_api( *_param, @@ -2731,11 +2754,14 @@ def get_canopus_prediction( @validate_call - def get_canopus_prediction_with_http_info( + def get_aligned_features_by_group_experimental_with_http_info( self, - project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + group_name: Annotated[StrictStr, Field(description="tag group name.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[AlignedFeatureOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2748,17 +2774,23 @@ def get_canopus_prediction_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[CanopusPrediction]: - """All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities, + ) -> ApiResponse[PagedModelAlignedFeature]: + """[EXPERIMENTAL] Get features (aligned over runs) by tag group - All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities, + [EXPERIMENTAL] Get features (aligned over runs) by tag group.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. - :param project_id: project-space to read from. (required) + :param project_id: project-space to delete from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) - :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str + :param group_name: tag group name. (required) + :type group_name: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[AlignedFeatureOptField] :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 @@ -2781,10 +2813,13 @@ def get_canopus_prediction_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_canopus_prediction_serialize( + _param = self._get_aligned_features_by_group_experimental_serialize( project_id=project_id, - aligned_feature_id=aligned_feature_id, - formula_id=formula_id, + group_name=group_name, + page=page, + size=size, + sort=sort, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -2792,7 +2827,7 @@ def get_canopus_prediction_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "CanopusPrediction", + '200': "PagedModelAlignedFeature", } response_data = self.api_client.call_api( *_param, @@ -2806,11 +2841,14 @@ def get_canopus_prediction_with_http_info( @validate_call - def get_canopus_prediction_without_preload_content( + def get_aligned_features_by_group_experimental_without_preload_content( self, - project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + group_name: Annotated[StrictStr, Field(description="tag group name.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[AlignedFeatureOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2824,16 +2862,22 @@ def get_canopus_prediction_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities, + """[EXPERIMENTAL] Get features (aligned over runs) by tag group - All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities, + [EXPERIMENTAL] Get features (aligned over runs) by tag group.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. - :param project_id: project-space to read from. (required) + :param project_id: project-space to delete from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) - :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str + :param group_name: tag group name. (required) + :type group_name: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[AlignedFeatureOptField] :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 @@ -2856,10 +2900,13 @@ def get_canopus_prediction_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_canopus_prediction_serialize( + _param = self._get_aligned_features_by_group_experimental_serialize( project_id=project_id, - aligned_feature_id=aligned_feature_id, - formula_id=formula_id, + group_name=group_name, + page=page, + size=size, + sort=sort, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -2867,7 +2914,7 @@ def get_canopus_prediction_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "CanopusPrediction", + '200': "PagedModelAlignedFeature", } response_data = self.api_client.call_api( *_param, @@ -2876,11 +2923,14 @@ def get_canopus_prediction_without_preload_content( return response_data.response - def _get_canopus_prediction_serialize( + def _get_aligned_features_by_group_experimental_serialize( self, project_id, - aligned_feature_id, - formula_id, + group_name, + page, + size, + sort, + opt_fields, _request_auth, _content_type, _headers, @@ -2890,6 +2940,8 @@ def _get_canopus_prediction_serialize( _host = None _collection_formats: Dict[str, str] = { + 'sort': 'multi', + 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -2902,11 +2954,27 @@ def _get_canopus_prediction_serialize( # process the path parameters if project_id is not None: _path_params['projectId'] = project_id - if aligned_feature_id is not None: - _path_params['alignedFeatureId'] = aligned_feature_id - if formula_id is not None: - _path_params['formulaId'] = formula_id # process the query parameters + if group_name is not None: + + _query_params.append(('groupName', group_name)) + + if page is not None: + + _query_params.append(('page', page)) + + if size is not None: + + _query_params.append(('size', size)) + + if sort is not None: + + _query_params.append(('sort', sort)) + + if opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) + # process the header parameters # process the form parameters # process the body parameter @@ -2926,7 +2994,7 @@ def _get_canopus_prediction_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/canopus-prediction', + resource_path='/api/projects/{projectId}/aligned-features/grouped', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -2943,11 +3011,14 @@ def _get_canopus_prediction_serialize( @validate_call - def get_de_novo_structure_candidates( + def get_aligned_features_by_tag_experimental( self, - project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + project_id: Annotated[StrictStr, Field(description="project space to get features (aligned over runs) from.")], + filter: Annotated[Optional[StrictStr], Field(description="tag filter.")] = None, + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[AlignedFeatureOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2960,17 +3031,23 @@ def get_de_novo_structure_candidates( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> List[StructureCandidateFormula]: - """List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + ) -> PagedModelAlignedFeature: + """[EXPERIMENTAL] Get features (aligned over runs) by tag - List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + [EXPERIMENTAL] Get features (aligned over runs) by tag.
The filter string must contain one or more clauses. A clause is prefÃxed by a field name.
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). Tag name based field need to be prefixed with the namespace tags.. Possible value types of tags are bool, integer, real, text, date, or time - tag value
The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.
A clause may be:
tags.MyTagA:sampletags.MyTagA:"Some Text"tags.MyTagA:/[mb]oat/tags.MyTagB<3[ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3] Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )
The syntax allows to build complex filter queries such as:
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
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. - :param project_id: project-space to read from. (required) + :param project_id: project space to get features (aligned over runs) from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) - :type aligned_feature_id: str + :param filter: tag filter. + :type filter: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[StructureCandidateOptField] + :type opt_fields: List[AlignedFeatureOptField] :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 @@ -2993,9 +3070,12 @@ def get_de_novo_structure_candidates( :return: Returns the result object. """ # noqa: E501 - _param = self._get_de_novo_structure_candidates_serialize( + _param = self._get_aligned_features_by_tag_experimental_serialize( project_id=project_id, - aligned_feature_id=aligned_feature_id, + filter=filter, + page=page, + size=size, + sort=sort, opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, @@ -3004,7 +3084,7 @@ def get_de_novo_structure_candidates( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[StructureCandidateFormula]", + '200': "PagedModelAlignedFeature", } response_data = self.api_client.call_api( *_param, @@ -3018,11 +3098,14 @@ def get_de_novo_structure_candidates( @validate_call - def get_de_novo_structure_candidates_with_http_info( + def get_aligned_features_by_tag_experimental_with_http_info( self, - project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + project_id: Annotated[StrictStr, Field(description="project space to get features (aligned over runs) from.")], + filter: Annotated[Optional[StrictStr], Field(description="tag filter.")] = None, + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[AlignedFeatureOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -3035,17 +3118,23 @@ def get_de_novo_structure_candidates_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[List[StructureCandidateFormula]]: - """List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + ) -> ApiResponse[PagedModelAlignedFeature]: + """[EXPERIMENTAL] Get features (aligned over runs) by tag - List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + [EXPERIMENTAL] Get features (aligned over runs) by tag.
The filter string must contain one or more clauses. A clause is prefÃxed by a field name.
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). Tag name based field need to be prefixed with the namespace tags.. Possible value types of tags are bool, integer, real, text, date, or time - tag value
The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.
A clause may be:
tags.MyTagA:sampletags.MyTagA:"Some Text"tags.MyTagA:/[mb]oat/tags.MyTagB<3[ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3] Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )
The syntax allows to build complex filter queries such as:
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
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. - :param project_id: project-space to read from. (required) + :param project_id: project space to get features (aligned over runs) from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) - :type aligned_feature_id: str + :param filter: tag filter. + :type filter: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[StructureCandidateOptField] + :type opt_fields: List[AlignedFeatureOptField] :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 @@ -3068,9 +3157,12 @@ def get_de_novo_structure_candidates_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_de_novo_structure_candidates_serialize( + _param = self._get_aligned_features_by_tag_experimental_serialize( project_id=project_id, - aligned_feature_id=aligned_feature_id, + filter=filter, + page=page, + size=size, + sort=sort, opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, @@ -3079,7 +3171,7 @@ def get_de_novo_structure_candidates_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[StructureCandidateFormula]", + '200': "PagedModelAlignedFeature", } response_data = self.api_client.call_api( *_param, @@ -3093,11 +3185,14 @@ def get_de_novo_structure_candidates_with_http_info( @validate_call - def get_de_novo_structure_candidates_without_preload_content( + def get_aligned_features_by_tag_experimental_without_preload_content( self, - project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + project_id: Annotated[StrictStr, Field(description="project space to get features (aligned over runs) from.")], + filter: Annotated[Optional[StrictStr], Field(description="tag filter.")] = None, + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[AlignedFeatureOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -3111,16 +3206,22 @@ def get_de_novo_structure_candidates_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + """[EXPERIMENTAL] Get features (aligned over runs) by tag - List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + [EXPERIMENTAL] Get features (aligned over runs) by tag.
The filter string must contain one or more clauses. A clause is prefÃxed by a field name.
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). Tag name based field need to be prefixed with the namespace tags.. Possible value types of tags are bool, integer, real, text, date, or time - tag value
The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.
A clause may be:
tags.MyTagA:sampletags.MyTagA:"Some Text"tags.MyTagA:/[mb]oat/tags.MyTagB<3[ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3] Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )
The syntax allows to build complex filter queries such as:
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
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. - :param project_id: project-space to read from. (required) + :param project_id: project space to get features (aligned over runs) from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) - :type aligned_feature_id: str + :param filter: tag filter. + :type filter: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[StructureCandidateOptField] + :type opt_fields: List[AlignedFeatureOptField] :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 @@ -3143,9 +3244,12 @@ def get_de_novo_structure_candidates_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_de_novo_structure_candidates_serialize( + _param = self._get_aligned_features_by_tag_experimental_serialize( project_id=project_id, - aligned_feature_id=aligned_feature_id, + filter=filter, + page=page, + size=size, + sort=sort, opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, @@ -3154,7 +3258,7 @@ def get_de_novo_structure_candidates_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[StructureCandidateFormula]", + '200': "PagedModelAlignedFeature", } response_data = self.api_client.call_api( *_param, @@ -3163,10 +3267,13 @@ def get_de_novo_structure_candidates_without_preload_content( return response_data.response - def _get_de_novo_structure_candidates_serialize( + def _get_aligned_features_by_tag_experimental_serialize( self, project_id, - aligned_feature_id, + filter, + page, + size, + sort, opt_fields, _request_auth, _content_type, @@ -3177,6 +3284,7 @@ def _get_de_novo_structure_candidates_serialize( _host = None _collection_formats: Dict[str, str] = { + 'sort': 'multi', 'optFields': 'multi', } @@ -3190,14 +3298,28 @@ def _get_de_novo_structure_candidates_serialize( # process the path parameters if project_id is not None: _path_params['projectId'] = project_id - if aligned_feature_id is not None: - _path_params['alignedFeatureId'] = aligned_feature_id # process the query parameters - if opt_fields is not None: + if filter is not None: - _query_params.append(('optFields', opt_fields)) + _query_params.append(('filter', filter)) - # process the header parameters + if page is not None: + + _query_params.append(('page', page)) + + if size is not None: + + _query_params.append(('size', size)) + + if sort is not None: + + _query_params.append(('sort', sort)) + + if opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) + + # process the header parameters # process the form parameters # process the body parameter @@ -3216,7 +3338,7 @@ def _get_de_novo_structure_candidates_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures', + resource_path='/api/projects/{projectId}/aligned-features/tagged', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -3233,12 +3355,14 @@ def _get_de_novo_structure_candidates_serialize( @validate_call - def get_de_novo_structure_candidates_by_formula( + def get_aligned_features_paged( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[AlignedFeatureOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -3251,19 +3375,23 @@ def get_de_novo_structure_candidates_by_formula( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> List[StructureCandidateScored]: - """List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + ) -> PagedModelAlignedFeature: + """Get all available features (aligned over runs) in the given project-space. - List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + Get all available features (aligned over runs) in the given project-space. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) - :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[StructureCandidateOptField] + :type opt_fields: List[AlignedFeatureOptField] :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 @@ -3286,10 +3414,12 @@ def get_de_novo_structure_candidates_by_formula( :return: Returns the result object. """ # noqa: E501 - _param = self._get_de_novo_structure_candidates_by_formula_serialize( + _param = self._get_aligned_features_paged_serialize( project_id=project_id, - aligned_feature_id=aligned_feature_id, - formula_id=formula_id, + page=page, + size=size, + sort=sort, + ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, @@ -3298,7 +3428,7 @@ def get_de_novo_structure_candidates_by_formula( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[StructureCandidateScored]", + '200': "PagedModelAlignedFeature", } response_data = self.api_client.call_api( *_param, @@ -3312,12 +3442,14 @@ def get_de_novo_structure_candidates_by_formula( @validate_call - def get_de_novo_structure_candidates_by_formula_with_http_info( + def get_aligned_features_paged_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[AlignedFeatureOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -3330,19 +3462,23 @@ def get_de_novo_structure_candidates_by_formula_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[List[StructureCandidateScored]]: - """List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + ) -> ApiResponse[PagedModelAlignedFeature]: + """Get all available features (aligned over runs) in the given project-space. - List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + Get all available features (aligned over runs) in the given project-space. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) - :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[StructureCandidateOptField] + :type opt_fields: List[AlignedFeatureOptField] :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 @@ -3365,10 +3501,12 @@ def get_de_novo_structure_candidates_by_formula_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_de_novo_structure_candidates_by_formula_serialize( + _param = self._get_aligned_features_paged_serialize( project_id=project_id, - aligned_feature_id=aligned_feature_id, - formula_id=formula_id, + page=page, + size=size, + sort=sort, + ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, @@ -3377,7 +3515,7 @@ def get_de_novo_structure_candidates_by_formula_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[StructureCandidateScored]", + '200': "PagedModelAlignedFeature", } response_data = self.api_client.call_api( *_param, @@ -3391,12 +3529,14 @@ def get_de_novo_structure_candidates_by_formula_with_http_info( @validate_call - def get_de_novo_structure_candidates_by_formula_without_preload_content( + def get_aligned_features_paged_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[AlignedFeatureOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -3410,18 +3550,22 @@ def get_de_novo_structure_candidates_by_formula_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + """Get all available features (aligned over runs) in the given project-space. - List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + Get all available features (aligned over runs) in the given project-space. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) - :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[StructureCandidateOptField] + :type opt_fields: List[AlignedFeatureOptField] :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 @@ -3444,10 +3588,12 @@ def get_de_novo_structure_candidates_by_formula_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_de_novo_structure_candidates_by_formula_serialize( + _param = self._get_aligned_features_paged_serialize( project_id=project_id, - aligned_feature_id=aligned_feature_id, - formula_id=formula_id, + page=page, + size=size, + sort=sort, + ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, @@ -3456,7 +3602,7 @@ def get_de_novo_structure_candidates_by_formula_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[StructureCandidateScored]", + '200': "PagedModelAlignedFeature", } response_data = self.api_client.call_api( *_param, @@ -3465,11 +3611,13 @@ def get_de_novo_structure_candidates_by_formula_without_preload_content( return response_data.response - def _get_de_novo_structure_candidates_by_formula_serialize( + def _get_aligned_features_paged_serialize( self, project_id, - aligned_feature_id, - formula_id, + page, + size, + sort, + ms_data_search_prepared, opt_fields, _request_auth, _content_type, @@ -3480,6 +3628,7 @@ def _get_de_novo_structure_candidates_by_formula_serialize( _host = None _collection_formats: Dict[str, str] = { + 'sort': 'multi', 'optFields': 'multi', } @@ -3493,11 +3642,23 @@ def _get_de_novo_structure_candidates_by_formula_serialize( # process the path parameters if project_id is not None: _path_params['projectId'] = project_id - if aligned_feature_id is not None: - _path_params['alignedFeatureId'] = aligned_feature_id - if formula_id is not None: - _path_params['formulaId'] = formula_id # process the query parameters + if page is not None: + + _query_params.append(('page', page)) + + if size is not None: + + _query_params.append(('size', size)) + + if sort is not None: + + _query_params.append(('sort', sort)) + + if ms_data_search_prepared is not None: + + _query_params.append(('msDataSearchPrepared', ms_data_search_prepared)) + if opt_fields is not None: _query_params.append(('optFields', opt_fields)) @@ -3521,7 +3682,7 @@ def _get_de_novo_structure_candidates_by_formula_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures', + resource_path='/api/projects/{projectId}/aligned-features/page', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -3538,15 +3699,11 @@ def _get_de_novo_structure_candidates_by_formula_serialize( @validate_call - def get_de_novo_structure_candidates_by_formula_paged( + def get_best_matching_compound_classes( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -3559,10 +3716,10 @@ def get_de_novo_structure_candidates_by_formula_paged( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> PagedModelStructureCandidateScored: - """Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + ) -> CompoundClasses: + """Return Best matching compound classes for given formulaId - Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + Return Best matching compound classes for given formulaId.
Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, :param project_id: project-space to read from. (required) :type project_id: str @@ -3570,14 +3727,6 @@ def get_de_novo_structure_candidates_by_formula_paged( :type aligned_feature_id: str :param formula_id: identifier of the requested formula result (required) :type formula_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[StructureCandidateOptField] :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 @@ -3600,14 +3749,10 @@ def get_de_novo_structure_candidates_by_formula_paged( :return: Returns the result object. """ # noqa: E501 - _param = self._get_de_novo_structure_candidates_by_formula_paged_serialize( + _param = self._get_best_matching_compound_classes_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, formula_id=formula_id, - page=page, - size=size, - sort=sort, - opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -3615,7 +3760,7 @@ def get_de_novo_structure_candidates_by_formula_paged( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelStructureCandidateScored", + '200': "CompoundClasses", } response_data = self.api_client.call_api( *_param, @@ -3629,15 +3774,11 @@ def get_de_novo_structure_candidates_by_formula_paged( @validate_call - def get_de_novo_structure_candidates_by_formula_paged_with_http_info( + def get_best_matching_compound_classes_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -3650,10 +3791,10 @@ def get_de_novo_structure_candidates_by_formula_paged_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[PagedModelStructureCandidateScored]: - """Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + ) -> ApiResponse[CompoundClasses]: + """Return Best matching compound classes for given formulaId - Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + Return Best matching compound classes for given formulaId.
Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, :param project_id: project-space to read from. (required) :type project_id: str @@ -3661,14 +3802,6 @@ def get_de_novo_structure_candidates_by_formula_paged_with_http_info( :type aligned_feature_id: str :param formula_id: identifier of the requested formula result (required) :type formula_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[StructureCandidateOptField] :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 @@ -3691,14 +3824,10 @@ def get_de_novo_structure_candidates_by_formula_paged_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_de_novo_structure_candidates_by_formula_paged_serialize( + _param = self._get_best_matching_compound_classes_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, formula_id=formula_id, - page=page, - size=size, - sort=sort, - opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -3706,7 +3835,7 @@ def get_de_novo_structure_candidates_by_formula_paged_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelStructureCandidateScored", + '200': "CompoundClasses", } response_data = self.api_client.call_api( *_param, @@ -3720,15 +3849,11 @@ def get_de_novo_structure_candidates_by_formula_paged_with_http_info( @validate_call - def get_de_novo_structure_candidates_by_formula_paged_without_preload_content( + def get_best_matching_compound_classes_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -3742,9 +3867,9 @@ def get_de_novo_structure_candidates_by_formula_paged_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + """Return Best matching compound classes for given formulaId - Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + Return Best matching compound classes for given formulaId.
Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, :param project_id: project-space to read from. (required) :type project_id: str @@ -3752,14 +3877,6 @@ def get_de_novo_structure_candidates_by_formula_paged_without_preload_content( :type aligned_feature_id: str :param formula_id: identifier of the requested formula result (required) :type formula_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[StructureCandidateOptField] :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 @@ -3782,14 +3899,10 @@ def get_de_novo_structure_candidates_by_formula_paged_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_de_novo_structure_candidates_by_formula_paged_serialize( + _param = self._get_best_matching_compound_classes_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, formula_id=formula_id, - page=page, - size=size, - sort=sort, - opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -3797,7 +3910,7 @@ def get_de_novo_structure_candidates_by_formula_paged_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelStructureCandidateScored", + '200': "CompoundClasses", } response_data = self.api_client.call_api( *_param, @@ -3806,15 +3919,11 @@ def get_de_novo_structure_candidates_by_formula_paged_without_preload_content( return response_data.response - def _get_de_novo_structure_candidates_by_formula_paged_serialize( + def _get_best_matching_compound_classes_serialize( self, project_id, aligned_feature_id, formula_id, - page, - size, - sort, - opt_fields, _request_auth, _content_type, _headers, @@ -3824,8 +3933,6 @@ def _get_de_novo_structure_candidates_by_formula_paged_serialize( _host = None _collection_formats: Dict[str, str] = { - 'sort': 'multi', - 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -3843,22 +3950,6 @@ def _get_de_novo_structure_candidates_by_formula_paged_serialize( if formula_id is not None: _path_params['formulaId'] = formula_id # process the query parameters - if page is not None: - - _query_params.append(('page', page)) - - if size is not None: - - _query_params.append(('size', size)) - - if sort is not None: - - _query_params.append(('sort', sort)) - - if opt_fields is not None: - - _query_params.append(('optFields', opt_fields)) - # process the header parameters # process the form parameters # process the body parameter @@ -3878,7 +3969,7 @@ def _get_de_novo_structure_candidates_by_formula_paged_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures/page', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -3895,14 +3986,11 @@ def _get_de_novo_structure_candidates_by_formula_paged_serialize( @validate_call - def get_de_novo_structure_candidates_paged( + def get_canopus_prediction( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -3915,23 +4003,17 @@ def get_de_novo_structure_candidates_paged( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> PagedModelStructureCandidateFormula: - """Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. - - Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + ) -> CanopusPrediction: + """All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities, + + All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities, :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[StructureCandidateOptField] + :param formula_id: identifier of the requested formula result (required) + :type formula_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 @@ -3954,13 +4036,10 @@ def get_de_novo_structure_candidates_paged( :return: Returns the result object. """ # noqa: E501 - _param = self._get_de_novo_structure_candidates_paged_serialize( + _param = self._get_canopus_prediction_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - page=page, - size=size, - sort=sort, - opt_fields=opt_fields, + formula_id=formula_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -3968,7 +4047,7 @@ def get_de_novo_structure_candidates_paged( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelStructureCandidateFormula", + '200': "CanopusPrediction", } response_data = self.api_client.call_api( *_param, @@ -3982,14 +4061,11 @@ def get_de_novo_structure_candidates_paged( @validate_call - def get_de_novo_structure_candidates_paged_with_http_info( + def get_canopus_prediction_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -4002,23 +4078,17 @@ def get_de_novo_structure_candidates_paged_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[PagedModelStructureCandidateFormula]: - """Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + ) -> ApiResponse[CanopusPrediction]: + """All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities, - Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities, :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[StructureCandidateOptField] + :param formula_id: identifier of the requested formula result (required) + :type formula_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 @@ -4041,13 +4111,10 @@ def get_de_novo_structure_candidates_paged_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_de_novo_structure_candidates_paged_serialize( + _param = self._get_canopus_prediction_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - page=page, - size=size, - sort=sort, - opt_fields=opt_fields, + formula_id=formula_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -4055,7 +4122,7 @@ def get_de_novo_structure_candidates_paged_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelStructureCandidateFormula", + '200': "CanopusPrediction", } response_data = self.api_client.call_api( *_param, @@ -4069,14 +4136,11 @@ def get_de_novo_structure_candidates_paged_with_http_info( @validate_call - def get_de_novo_structure_candidates_paged_without_preload_content( + def get_canopus_prediction_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -4090,22 +4154,16 @@ def get_de_novo_structure_candidates_paged_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + """All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities, - Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities, :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[StructureCandidateOptField] + :param formula_id: identifier of the requested formula result (required) + :type formula_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 @@ -4128,13 +4186,10 @@ def get_de_novo_structure_candidates_paged_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_de_novo_structure_candidates_paged_serialize( + _param = self._get_canopus_prediction_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - page=page, - size=size, - sort=sort, - opt_fields=opt_fields, + formula_id=formula_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -4142,7 +4197,7 @@ def get_de_novo_structure_candidates_paged_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelStructureCandidateFormula", + '200': "CanopusPrediction", } response_data = self.api_client.call_api( *_param, @@ -4151,14 +4206,11 @@ def get_de_novo_structure_candidates_paged_without_preload_content( return response_data.response - def _get_de_novo_structure_candidates_paged_serialize( + def _get_canopus_prediction_serialize( self, project_id, aligned_feature_id, - page, - size, - sort, - opt_fields, + formula_id, _request_auth, _content_type, _headers, @@ -4168,8 +4220,6 @@ def _get_de_novo_structure_candidates_paged_serialize( _host = None _collection_formats: Dict[str, str] = { - 'sort': 'multi', - 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -4184,23 +4234,9 @@ def _get_de_novo_structure_candidates_paged_serialize( _path_params['projectId'] = project_id if aligned_feature_id is not None: _path_params['alignedFeatureId'] = aligned_feature_id + if formula_id is not None: + _path_params['formulaId'] = formula_id # process the query parameters - if page is not None: - - _query_params.append(('page', page)) - - if size is not None: - - _query_params.append(('size', size)) - - if sort is not None: - - _query_params.append(('sort', sort)) - - if opt_fields is not None: - - _query_params.append(('optFields', opt_fields)) - # process the header parameters # process the form parameters # process the body parameter @@ -4220,7 +4256,7 @@ def _get_de_novo_structure_candidates_paged_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures/page', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/canopus-prediction', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -4237,11 +4273,11 @@ def _get_de_novo_structure_candidates_paged_serialize( @validate_call - def get_fingerprint_prediction( + def get_de_novo_structure_candidates( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -4254,17 +4290,17 @@ def get_fingerprint_prediction( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> List[float]: - """Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier This fingerprint is used to perform structure database search and predict compound classes. + ) -> List[StructureCandidateFormula]: + """List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. - Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier This fingerprint is used to perform structure database search and predict compound classes. + List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[StructureCandidateOptField] :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 @@ -4287,10 +4323,10 @@ def get_fingerprint_prediction( :return: Returns the result object. """ # noqa: E501 - _param = self._get_fingerprint_prediction_serialize( + _param = self._get_de_novo_structure_candidates_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - formula_id=formula_id, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -4298,7 +4334,7 @@ def get_fingerprint_prediction( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[float]", + '200': "List[StructureCandidateFormula]", } response_data = self.api_client.call_api( *_param, @@ -4312,11 +4348,11 @@ def get_fingerprint_prediction( @validate_call - def get_fingerprint_prediction_with_http_info( + def get_de_novo_structure_candidates_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -4329,17 +4365,17 @@ def get_fingerprint_prediction_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[List[float]]: - """Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier This fingerprint is used to perform structure database search and predict compound classes. + ) -> ApiResponse[List[StructureCandidateFormula]]: + """List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. - Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier This fingerprint is used to perform structure database search and predict compound classes. + List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[StructureCandidateOptField] :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 @@ -4362,10 +4398,10 @@ def get_fingerprint_prediction_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_fingerprint_prediction_serialize( + _param = self._get_de_novo_structure_candidates_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - formula_id=formula_id, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -4373,7 +4409,7 @@ def get_fingerprint_prediction_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[float]", + '200': "List[StructureCandidateFormula]", } response_data = self.api_client.call_api( *_param, @@ -4387,11 +4423,11 @@ def get_fingerprint_prediction_with_http_info( @validate_call - def get_fingerprint_prediction_without_preload_content( + def get_de_novo_structure_candidates_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -4405,16 +4441,16 @@ def get_fingerprint_prediction_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier This fingerprint is used to perform structure database search and predict compound classes. + """List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. - Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier This fingerprint is used to perform structure database search and predict compound classes. + List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[StructureCandidateOptField] :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 @@ -4437,10 +4473,10 @@ def get_fingerprint_prediction_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_fingerprint_prediction_serialize( + _param = self._get_de_novo_structure_candidates_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - formula_id=formula_id, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -4448,7 +4484,7 @@ def get_fingerprint_prediction_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[float]", + '200': "List[StructureCandidateFormula]", } response_data = self.api_client.call_api( *_param, @@ -4457,11 +4493,11 @@ def get_fingerprint_prediction_without_preload_content( return response_data.response - def _get_fingerprint_prediction_serialize( + def _get_de_novo_structure_candidates_serialize( self, project_id, aligned_feature_id, - formula_id, + opt_fields, _request_auth, _content_type, _headers, @@ -4471,6 +4507,7 @@ def _get_fingerprint_prediction_serialize( _host = None _collection_formats: Dict[str, str] = { + 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -4485,9 +4522,11 @@ def _get_fingerprint_prediction_serialize( _path_params['projectId'] = project_id if aligned_feature_id is not None: _path_params['alignedFeatureId'] = aligned_feature_id - if formula_id is not None: - _path_params['formulaId'] = formula_id # process the query parameters + if opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) + # process the header parameters # process the form parameters # process the body parameter @@ -4507,7 +4546,7 @@ def _get_fingerprint_prediction_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -4524,11 +4563,12 @@ def _get_fingerprint_prediction_serialize( @validate_call - def get_formula_annotated_ms_ms_data( + def get_de_novo_structure_candidates_by_formula( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -4541,10 +4581,10 @@ def get_formula_annotated_ms_ms_data( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> AnnotatedMsMsData: - """Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. + ) -> List[StructureCandidateScored]: + """List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. - Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. + List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. :param project_id: project-space to read from. (required) :type project_id: str @@ -4552,6 +4592,8 @@ def get_formula_annotated_ms_ms_data( :type aligned_feature_id: str :param formula_id: identifier of the requested formula result (required) :type formula_id: str + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[StructureCandidateOptField] :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 @@ -4574,10 +4616,11 @@ def get_formula_annotated_ms_ms_data( :return: Returns the result object. """ # noqa: E501 - _param = self._get_formula_annotated_ms_ms_data_serialize( + _param = self._get_de_novo_structure_candidates_by_formula_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, formula_id=formula_id, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -4585,7 +4628,7 @@ def get_formula_annotated_ms_ms_data( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "AnnotatedMsMsData", + '200': "List[StructureCandidateScored]", } response_data = self.api_client.call_api( *_param, @@ -4599,11 +4642,12 @@ def get_formula_annotated_ms_ms_data( @validate_call - def get_formula_annotated_ms_ms_data_with_http_info( + def get_de_novo_structure_candidates_by_formula_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -4616,10 +4660,10 @@ def get_formula_annotated_ms_ms_data_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[AnnotatedMsMsData]: - """Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. + ) -> ApiResponse[List[StructureCandidateScored]]: + """List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. - Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. + List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. :param project_id: project-space to read from. (required) :type project_id: str @@ -4627,6 +4671,8 @@ def get_formula_annotated_ms_ms_data_with_http_info( :type aligned_feature_id: str :param formula_id: identifier of the requested formula result (required) :type formula_id: str + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[StructureCandidateOptField] :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 @@ -4649,10 +4695,11 @@ def get_formula_annotated_ms_ms_data_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_formula_annotated_ms_ms_data_serialize( + _param = self._get_de_novo_structure_candidates_by_formula_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, formula_id=formula_id, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -4660,7 +4707,7 @@ def get_formula_annotated_ms_ms_data_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "AnnotatedMsMsData", + '200': "List[StructureCandidateScored]", } response_data = self.api_client.call_api( *_param, @@ -4674,11 +4721,12 @@ def get_formula_annotated_ms_ms_data_with_http_info( @validate_call - def get_formula_annotated_ms_ms_data_without_preload_content( + def get_de_novo_structure_candidates_by_formula_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -4692,9 +4740,9 @@ def get_formula_annotated_ms_ms_data_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. + """List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. - Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. + List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. :param project_id: project-space to read from. (required) :type project_id: str @@ -4702,6 +4750,8 @@ def get_formula_annotated_ms_ms_data_without_preload_content( :type aligned_feature_id: str :param formula_id: identifier of the requested formula result (required) :type formula_id: str + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[StructureCandidateOptField] :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 @@ -4724,10 +4774,11 @@ def get_formula_annotated_ms_ms_data_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_formula_annotated_ms_ms_data_serialize( + _param = self._get_de_novo_structure_candidates_by_formula_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, formula_id=formula_id, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -4735,7 +4786,7 @@ def get_formula_annotated_ms_ms_data_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "AnnotatedMsMsData", + '200': "List[StructureCandidateScored]", } response_data = self.api_client.call_api( *_param, @@ -4744,11 +4795,12 @@ def get_formula_annotated_ms_ms_data_without_preload_content( return response_data.response - def _get_formula_annotated_ms_ms_data_serialize( + def _get_de_novo_structure_candidates_by_formula_serialize( self, project_id, aligned_feature_id, formula_id, + opt_fields, _request_auth, _content_type, _headers, @@ -4758,6 +4810,7 @@ def _get_formula_annotated_ms_ms_data_serialize( _host = None _collection_formats: Dict[str, str] = { + 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -4775,6 +4828,10 @@ def _get_formula_annotated_ms_ms_data_serialize( if formula_id is not None: _path_params['formulaId'] = formula_id # process the query parameters + if opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) + # process the header parameters # process the form parameters # process the body parameter @@ -4794,7 +4851,7 @@ def _get_formula_annotated_ms_ms_data_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -4811,12 +4868,15 @@ def _get_formula_annotated_ms_ms_data_serialize( @validate_call - def get_formula_annotated_spectrum( + def get_de_novo_structure_candidates_by_formula_paged( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - spectrum_index: Annotated[Optional[StrictInt], Field(description="index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)")] = None, + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -4829,10 +4889,10 @@ def get_formula_annotated_spectrum( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> AnnotatedSpectrum: - """Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. + ) -> PagedModelStructureCandidateScored: + """Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. - Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. + Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. :param project_id: project-space to read from. (required) :type project_id: str @@ -4840,8 +4900,14 @@ def get_formula_annotated_spectrum( :type aligned_feature_id: str :param formula_id: identifier of the requested formula result (required) :type formula_id: str - :param spectrum_index: index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) - :type spectrum_index: int + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[StructureCandidateOptField] :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 @@ -4864,11 +4930,14 @@ def get_formula_annotated_spectrum( :return: Returns the result object. """ # noqa: E501 - _param = self._get_formula_annotated_spectrum_serialize( + _param = self._get_de_novo_structure_candidates_by_formula_paged_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, formula_id=formula_id, - spectrum_index=spectrum_index, + page=page, + size=size, + sort=sort, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -4876,7 +4945,7 @@ def get_formula_annotated_spectrum( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "AnnotatedSpectrum", + '200': "PagedModelStructureCandidateScored", } response_data = self.api_client.call_api( *_param, @@ -4890,12 +4959,15 @@ def get_formula_annotated_spectrum( @validate_call - def get_formula_annotated_spectrum_with_http_info( + def get_de_novo_structure_candidates_by_formula_paged_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - spectrum_index: Annotated[Optional[StrictInt], Field(description="index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)")] = None, + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -4908,10 +4980,10 @@ def get_formula_annotated_spectrum_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[AnnotatedSpectrum]: - """Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. + ) -> ApiResponse[PagedModelStructureCandidateScored]: + """Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. - Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. + Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. :param project_id: project-space to read from. (required) :type project_id: str @@ -4919,8 +4991,14 @@ def get_formula_annotated_spectrum_with_http_info( :type aligned_feature_id: str :param formula_id: identifier of the requested formula result (required) :type formula_id: str - :param spectrum_index: index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) - :type spectrum_index: int + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[StructureCandidateOptField] :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 @@ -4943,11 +5021,14 @@ def get_formula_annotated_spectrum_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_formula_annotated_spectrum_serialize( + _param = self._get_de_novo_structure_candidates_by_formula_paged_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, formula_id=formula_id, - spectrum_index=spectrum_index, + page=page, + size=size, + sort=sort, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -4955,7 +5036,7 @@ def get_formula_annotated_spectrum_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "AnnotatedSpectrum", + '200': "PagedModelStructureCandidateScored", } response_data = self.api_client.call_api( *_param, @@ -4969,12 +5050,15 @@ def get_formula_annotated_spectrum_with_http_info( @validate_call - def get_formula_annotated_spectrum_without_preload_content( + def get_de_novo_structure_candidates_by_formula_paged_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - spectrum_index: Annotated[Optional[StrictInt], Field(description="index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)")] = None, + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -4988,9 +5072,9 @@ def get_formula_annotated_spectrum_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. + """Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. - Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. + Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. :param project_id: project-space to read from. (required) :type project_id: str @@ -4998,8 +5082,14 @@ def get_formula_annotated_spectrum_without_preload_content( :type aligned_feature_id: str :param formula_id: identifier of the requested formula result (required) :type formula_id: str - :param spectrum_index: index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) - :type spectrum_index: int + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[StructureCandidateOptField] :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 @@ -5022,11 +5112,14 @@ def get_formula_annotated_spectrum_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_formula_annotated_spectrum_serialize( + _param = self._get_de_novo_structure_candidates_by_formula_paged_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, formula_id=formula_id, - spectrum_index=spectrum_index, + page=page, + size=size, + sort=sort, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -5034,7 +5127,7 @@ def get_formula_annotated_spectrum_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "AnnotatedSpectrum", + '200': "PagedModelStructureCandidateScored", } response_data = self.api_client.call_api( *_param, @@ -5043,12 +5136,15 @@ def get_formula_annotated_spectrum_without_preload_content( return response_data.response - def _get_formula_annotated_spectrum_serialize( + def _get_de_novo_structure_candidates_by_formula_paged_serialize( self, project_id, aligned_feature_id, formula_id, - spectrum_index, + page, + size, + sort, + opt_fields, _request_auth, _content_type, _headers, @@ -5058,6 +5154,8 @@ def _get_formula_annotated_spectrum_serialize( _host = None _collection_formats: Dict[str, str] = { + 'sort': 'multi', + 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -5075,9 +5173,21 @@ def _get_formula_annotated_spectrum_serialize( if formula_id is not None: _path_params['formulaId'] = formula_id # process the query parameters - if spectrum_index is not None: + if page is not None: - _query_params.append(('spectrumIndex', spectrum_index)) + _query_params.append(('page', page)) + + if size is not None: + + _query_params.append(('size', size)) + + if sort is not None: + + _query_params.append(('sort', sort)) + + if opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) # process the header parameters # process the form parameters @@ -5098,7 +5208,7 @@ def _get_formula_annotated_spectrum_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures/page', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -5115,12 +5225,14 @@ def _get_formula_annotated_spectrum_serialize( @validate_call - def get_formula_candidate( + def get_de_novo_structure_candidates_paged( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - opt_fields: Annotated[Optional[List[Optional[FormulaCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -5133,19 +5245,23 @@ def get_formula_candidate( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> FormulaCandidate: - """FormulaResultContainers for the given 'formulaId' with minimal information. + ) -> PagedModelStructureCandidateFormula: + """Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. - FormulaResultContainers for the given 'formulaId' with minimal information. Can be enriched with an optional results overview and formula candidate information. + Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[FormulaCandidateOptField] + :type opt_fields: List[StructureCandidateOptField] :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 @@ -5168,10 +5284,12 @@ def get_formula_candidate( :return: Returns the result object. """ # noqa: E501 - _param = self._get_formula_candidate_serialize( + _param = self._get_de_novo_structure_candidates_paged_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - formula_id=formula_id, + page=page, + size=size, + sort=sort, opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, @@ -5180,7 +5298,7 @@ def get_formula_candidate( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "FormulaCandidate", + '200': "PagedModelStructureCandidateFormula", } response_data = self.api_client.call_api( *_param, @@ -5194,12 +5312,14 @@ def get_formula_candidate( @validate_call - def get_formula_candidate_with_http_info( + def get_de_novo_structure_candidates_paged_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - opt_fields: Annotated[Optional[List[Optional[FormulaCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -5212,19 +5332,23 @@ def get_formula_candidate_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[FormulaCandidate]: - """FormulaResultContainers for the given 'formulaId' with minimal information. + ) -> ApiResponse[PagedModelStructureCandidateFormula]: + """Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. - FormulaResultContainers for the given 'formulaId' with minimal information. Can be enriched with an optional results overview and formula candidate information. + Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[FormulaCandidateOptField] + :type opt_fields: List[StructureCandidateOptField] :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 @@ -5247,10 +5371,12 @@ def get_formula_candidate_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_formula_candidate_serialize( + _param = self._get_de_novo_structure_candidates_paged_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - formula_id=formula_id, + page=page, + size=size, + sort=sort, opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, @@ -5259,7 +5385,7 @@ def get_formula_candidate_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "FormulaCandidate", + '200': "PagedModelStructureCandidateFormula", } response_data = self.api_client.call_api( *_param, @@ -5273,12 +5399,14 @@ def get_formula_candidate_with_http_info( @validate_call - def get_formula_candidate_without_preload_content( + def get_de_novo_structure_candidates_paged_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - opt_fields: Annotated[Optional[List[Optional[FormulaCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -5292,18 +5420,22 @@ def get_formula_candidate_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """FormulaResultContainers for the given 'formulaId' with minimal information. + """Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. - FormulaResultContainers for the given 'formulaId' with minimal information. Can be enriched with an optional results overview and formula candidate information. + Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[FormulaCandidateOptField] + :type opt_fields: List[StructureCandidateOptField] :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 @@ -5326,10 +5458,12 @@ def get_formula_candidate_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_formula_candidate_serialize( + _param = self._get_de_novo_structure_candidates_paged_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - formula_id=formula_id, + page=page, + size=size, + sort=sort, opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, @@ -5338,7 +5472,7 @@ def get_formula_candidate_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "FormulaCandidate", + '200': "PagedModelStructureCandidateFormula", } response_data = self.api_client.call_api( *_param, @@ -5347,11 +5481,13 @@ def get_formula_candidate_without_preload_content( return response_data.response - def _get_formula_candidate_serialize( + def _get_de_novo_structure_candidates_paged_serialize( self, project_id, aligned_feature_id, - formula_id, + page, + size, + sort, opt_fields, _request_auth, _content_type, @@ -5362,6 +5498,7 @@ def _get_formula_candidate_serialize( _host = None _collection_formats: Dict[str, str] = { + 'sort': 'multi', 'optFields': 'multi', } @@ -5377,9 +5514,19 @@ def _get_formula_candidate_serialize( _path_params['projectId'] = project_id if aligned_feature_id is not None: _path_params['alignedFeatureId'] = aligned_feature_id - if formula_id is not None: - _path_params['formulaId'] = formula_id # process the query parameters + if page is not None: + + _query_params.append(('page', page)) + + if size is not None: + + _query_params.append(('size', size)) + + if sort is not None: + + _query_params.append(('sort', sort)) + if opt_fields is not None: _query_params.append(('optFields', opt_fields)) @@ -5403,7 +5550,7 @@ def _get_formula_candidate_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures/page', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -5420,11 +5567,10 @@ def _get_formula_candidate_serialize( @validate_call - def get_formula_candidates( + def get_feature_quant_table_experimental( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - opt_fields: Annotated[Optional[List[Optional[FormulaCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + type: Annotated[Optional[QuantMeasure], Field(description="quantification type.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -5437,17 +5583,15 @@ def get_formula_candidates( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> List[FormulaCandidate]: - """List of FormulaResultContainers available for this feature with minimal information. + ) -> QuantTableExperimental: + """[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId) - List of FormulaResultContainers available for this feature with minimal information. Can be enriched with an optional results overview. + [EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId).
Returns the full quantification table. The quantification table contains a quantities of the features within all runs they are contained in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) - :type aligned_feature_id: str - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[FormulaCandidateOptField] + :param type: quantification type. + :type type: QuantMeasure :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 @@ -5470,10 +5614,9 @@ def get_formula_candidates( :return: Returns the result object. """ # noqa: E501 - _param = self._get_formula_candidates_serialize( + _param = self._get_feature_quant_table_experimental_serialize( project_id=project_id, - aligned_feature_id=aligned_feature_id, - opt_fields=opt_fields, + type=type, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -5481,7 +5624,7 @@ def get_formula_candidates( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[FormulaCandidate]", + '200': "QuantTableExperimental", } response_data = self.api_client.call_api( *_param, @@ -5495,11 +5638,10 @@ def get_formula_candidates( @validate_call - def get_formula_candidates_with_http_info( + def get_feature_quant_table_experimental_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - opt_fields: Annotated[Optional[List[Optional[FormulaCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + type: Annotated[Optional[QuantMeasure], Field(description="quantification type.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -5512,17 +5654,15 @@ def get_formula_candidates_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[List[FormulaCandidate]]: - """List of FormulaResultContainers available for this feature with minimal information. + ) -> ApiResponse[QuantTableExperimental]: + """[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId) - List of FormulaResultContainers available for this feature with minimal information. Can be enriched with an optional results overview. + [EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId).
Returns the full quantification table. The quantification table contains a quantities of the features within all runs they are contained in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) - :type aligned_feature_id: str - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[FormulaCandidateOptField] + :param type: quantification type. + :type type: QuantMeasure :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 @@ -5545,10 +5685,9 @@ def get_formula_candidates_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_formula_candidates_serialize( + _param = self._get_feature_quant_table_experimental_serialize( project_id=project_id, - aligned_feature_id=aligned_feature_id, - opt_fields=opt_fields, + type=type, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -5556,7 +5695,7 @@ def get_formula_candidates_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[FormulaCandidate]", + '200': "QuantTableExperimental", } response_data = self.api_client.call_api( *_param, @@ -5570,11 +5709,10 @@ def get_formula_candidates_with_http_info( @validate_call - def get_formula_candidates_without_preload_content( + def get_feature_quant_table_experimental_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - opt_fields: Annotated[Optional[List[Optional[FormulaCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + type: Annotated[Optional[QuantMeasure], Field(description="quantification type.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -5588,16 +5726,14 @@ def get_formula_candidates_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """List of FormulaResultContainers available for this feature with minimal information. + """[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId) - List of FormulaResultContainers available for this feature with minimal information. Can be enriched with an optional results overview. + [EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId).
Returns the full quantification table. The quantification table contains a quantities of the features within all runs they are contained in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) - :type aligned_feature_id: str - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[FormulaCandidateOptField] + :param type: quantification type. + :type type: QuantMeasure :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 @@ -5620,10 +5756,9 @@ def get_formula_candidates_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_formula_candidates_serialize( + _param = self._get_feature_quant_table_experimental_serialize( project_id=project_id, - aligned_feature_id=aligned_feature_id, - opt_fields=opt_fields, + type=type, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -5631,7 +5766,7 @@ def get_formula_candidates_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[FormulaCandidate]", + '200': "QuantTableExperimental", } response_data = self.api_client.call_api( *_param, @@ -5640,11 +5775,10 @@ def get_formula_candidates_without_preload_content( return response_data.response - def _get_formula_candidates_serialize( + def _get_feature_quant_table_experimental_serialize( self, project_id, - aligned_feature_id, - opt_fields, + type, _request_auth, _content_type, _headers, @@ -5654,7 +5788,6 @@ def _get_formula_candidates_serialize( _host = None _collection_formats: Dict[str, str] = { - 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -5667,12 +5800,10 @@ def _get_formula_candidates_serialize( # process the path parameters if project_id is not None: _path_params['projectId'] = project_id - if aligned_feature_id is not None: - _path_params['alignedFeatureId'] = aligned_feature_id # process the query parameters - if opt_fields is not None: + if type is not None: - _query_params.append(('optFields', opt_fields)) + _query_params.append(('type', type.value)) # process the header parameters # process the form parameters @@ -5693,7 +5824,7 @@ def _get_formula_candidates_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas', + resource_path='/api/projects/{projectId}/aligned-features/quant-table', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -5710,14 +5841,11 @@ def _get_formula_candidates_serialize( @validate_call - def get_formula_candidates_paged( + def get_fingerprint_prediction( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[FormulaCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -5730,23 +5858,17 @@ def get_formula_candidates_paged( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> PagedModelFormulaCandidate: - """Page of FormulaResultContainers available for this feature with minimal information. + ) -> List[float]: + """Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId) - Page of FormulaResultContainers available for this feature with minimal information. Can be enriched with an optional results overview. + Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)
This fingerprint is used to perform structure database search and predict compound classes. :param project_id: project-space to read from. (required) :type project_id: str :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[FormulaCandidateOptField] + :param formula_id: identifier of the requested formula result (required) + :type formula_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 @@ -5769,13 +5891,10 @@ def get_formula_candidates_paged( :return: Returns the result object. """ # noqa: E501 - _param = self._get_formula_candidates_paged_serialize( + _param = self._get_fingerprint_prediction_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - page=page, - size=size, - sort=sort, - opt_fields=opt_fields, + formula_id=formula_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -5783,7 +5902,7 @@ def get_formula_candidates_paged( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelFormulaCandidate", + '200': "List[float]", } response_data = self.api_client.call_api( *_param, @@ -5797,14 +5916,11 @@ def get_formula_candidates_paged( @validate_call - def get_formula_candidates_paged_with_http_info( + def get_fingerprint_prediction_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[FormulaCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -5817,23 +5933,17 @@ def get_formula_candidates_paged_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[PagedModelFormulaCandidate]: - """Page of FormulaResultContainers available for this feature with minimal information. + ) -> ApiResponse[List[float]]: + """Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId) - Page of FormulaResultContainers available for this feature with minimal information. Can be enriched with an optional results overview. + Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)
This fingerprint is used to perform structure database search and predict compound classes. :param project_id: project-space to read from. (required) :type project_id: str :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[FormulaCandidateOptField] + :param formula_id: identifier of the requested formula result (required) + :type formula_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 @@ -5856,13 +5966,10 @@ def get_formula_candidates_paged_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_formula_candidates_paged_serialize( + _param = self._get_fingerprint_prediction_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - page=page, - size=size, - sort=sort, - opt_fields=opt_fields, + formula_id=formula_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -5870,7 +5977,7 @@ def get_formula_candidates_paged_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelFormulaCandidate", + '200': "List[float]", } response_data = self.api_client.call_api( *_param, @@ -5884,14 +5991,11 @@ def get_formula_candidates_paged_with_http_info( @validate_call - def get_formula_candidates_paged_without_preload_content( + def get_fingerprint_prediction_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[FormulaCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -5905,22 +6009,16 @@ def get_formula_candidates_paged_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Page of FormulaResultContainers available for this feature with minimal information. + """Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId) - Page of FormulaResultContainers available for this feature with minimal information. Can be enriched with an optional results overview. + Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)
This fingerprint is used to perform structure database search and predict compound classes. :param project_id: project-space to read from. (required) :type project_id: str :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[FormulaCandidateOptField] + :param formula_id: identifier of the requested formula result (required) + :type formula_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 @@ -5943,13 +6041,10 @@ def get_formula_candidates_paged_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_formula_candidates_paged_serialize( + _param = self._get_fingerprint_prediction_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - page=page, - size=size, - sort=sort, - opt_fields=opt_fields, + formula_id=formula_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -5957,7 +6052,7 @@ def get_formula_candidates_paged_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelFormulaCandidate", + '200': "List[float]", } response_data = self.api_client.call_api( *_param, @@ -5966,14 +6061,11 @@ def get_formula_candidates_paged_without_preload_content( return response_data.response - def _get_formula_candidates_paged_serialize( + def _get_fingerprint_prediction_serialize( self, project_id, aligned_feature_id, - page, - size, - sort, - opt_fields, + formula_id, _request_auth, _content_type, _headers, @@ -5983,8 +6075,6 @@ def _get_formula_candidates_paged_serialize( _host = None _collection_formats: Dict[str, str] = { - 'sort': 'multi', - 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -5999,23 +6089,9 @@ def _get_formula_candidates_paged_serialize( _path_params['projectId'] = project_id if aligned_feature_id is not None: _path_params['alignedFeatureId'] = aligned_feature_id + if formula_id is not None: + _path_params['formulaId'] = formula_id # process the query parameters - if page is not None: - - _query_params.append(('page', page)) - - if size is not None: - - _query_params.append(('size', size)) - - if sort is not None: - - _query_params.append(('sort', sort)) - - if opt_fields is not None: - - _query_params.append(('optFields', opt_fields)) - # process the header parameters # process the form parameters # process the body parameter @@ -6035,7 +6111,7 @@ def _get_formula_candidates_paged_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/page', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -6052,11 +6128,12 @@ def _get_formula_candidates_paged_serialize( @validate_call - def get_frag_tree( + def get_formula_annotated_ms_ms_data( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -6069,10 +6146,10 @@ def get_frag_tree( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> FragmentationTree: - """Returns fragmentation tree (SIRIUS) for the given formula result identifier This tree is used to rank formula candidates (treeScore). + ) -> AnnotatedMsMsData: + """Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId - Returns fragmentation tree (SIRIUS) for the given formula result identifier This tree is used to rank formula candidates (treeScore). + Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId.
Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. :param project_id: project-space to read from. (required) :type project_id: str @@ -6080,6 +6157,8 @@ def get_frag_tree( :type aligned_feature_id: str :param formula_id: identifier of the requested formula result (required) :type formula_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: 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 @@ -6102,10 +6181,11 @@ def get_frag_tree( :return: Returns the result object. """ # noqa: E501 - _param = self._get_frag_tree_serialize( + _param = self._get_formula_annotated_ms_ms_data_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, formula_id=formula_id, + ms_data_search_prepared=ms_data_search_prepared, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -6113,7 +6193,7 @@ def get_frag_tree( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "FragmentationTree", + '200': "AnnotatedMsMsData", } response_data = self.api_client.call_api( *_param, @@ -6127,11 +6207,12 @@ def get_frag_tree( @validate_call - def get_frag_tree_with_http_info( + def get_formula_annotated_ms_ms_data_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -6144,10 +6225,10 @@ def get_frag_tree_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[FragmentationTree]: - """Returns fragmentation tree (SIRIUS) for the given formula result identifier This tree is used to rank formula candidates (treeScore). + ) -> ApiResponse[AnnotatedMsMsData]: + """Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId - Returns fragmentation tree (SIRIUS) for the given formula result identifier This tree is used to rank formula candidates (treeScore). + Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId.
Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. :param project_id: project-space to read from. (required) :type project_id: str @@ -6155,6 +6236,8 @@ def get_frag_tree_with_http_info( :type aligned_feature_id: str :param formula_id: identifier of the requested formula result (required) :type formula_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: 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 @@ -6177,10 +6260,11 @@ def get_frag_tree_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_frag_tree_serialize( + _param = self._get_formula_annotated_ms_ms_data_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, formula_id=formula_id, + ms_data_search_prepared=ms_data_search_prepared, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -6188,7 +6272,7 @@ def get_frag_tree_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "FragmentationTree", + '200': "AnnotatedMsMsData", } response_data = self.api_client.call_api( *_param, @@ -6202,11 +6286,12 @@ def get_frag_tree_with_http_info( @validate_call - def get_frag_tree_without_preload_content( + def get_formula_annotated_ms_ms_data_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -6220,9 +6305,9 @@ def get_frag_tree_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Returns fragmentation tree (SIRIUS) for the given formula result identifier This tree is used to rank formula candidates (treeScore). + """Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId - Returns fragmentation tree (SIRIUS) for the given formula result identifier This tree is used to rank formula candidates (treeScore). + Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId.
Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. :param project_id: project-space to read from. (required) :type project_id: str @@ -6230,6 +6315,8 @@ def get_frag_tree_without_preload_content( :type aligned_feature_id: str :param formula_id: identifier of the requested formula result (required) :type formula_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: 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 @@ -6252,10 +6339,11 @@ def get_frag_tree_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_frag_tree_serialize( + _param = self._get_formula_annotated_ms_ms_data_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, formula_id=formula_id, + ms_data_search_prepared=ms_data_search_prepared, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -6263,7 +6351,7 @@ def get_frag_tree_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "FragmentationTree", + '200': "AnnotatedMsMsData", } response_data = self.api_client.call_api( *_param, @@ -6272,11 +6360,12 @@ def get_frag_tree_without_preload_content( return response_data.response - def _get_frag_tree_serialize( + def _get_formula_annotated_ms_ms_data_serialize( self, project_id, aligned_feature_id, formula_id, + ms_data_search_prepared, _request_auth, _content_type, _headers, @@ -6303,6 +6392,10 @@ def _get_frag_tree_serialize( if formula_id is not None: _path_params['formulaId'] = formula_id # process the query parameters + if ms_data_search_prepared is not None: + + _query_params.append(('msDataSearchPrepared', ms_data_search_prepared)) + # process the header parameters # process the form parameters # process the body parameter @@ -6322,7 +6415,7 @@ def _get_frag_tree_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -6339,11 +6432,13 @@ def _get_frag_tree_serialize( @validate_call - def get_isotope_pattern_annotation( + def get_formula_annotated_spectrum( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + spectrum_index: Annotated[Optional[StrictInt], Field(description="index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)")] = None, + search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -6356,10 +6451,10 @@ def get_isotope_pattern_annotation( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> IsotopePatternAnnotation: - """Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. + ) -> AnnotatedSpectrum: + """Returns a fragmentation spectrum (e - Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore). + Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier
These annotations are only available if a fragmentation tree is available. :param project_id: project-space to read from. (required) :type project_id: str @@ -6367,6 +6462,10 @@ def get_isotope_pattern_annotation( :type aligned_feature_id: str :param formula_id: identifier of the requested formula result (required) :type formula_id: str + :param spectrum_index: index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) + :type spectrum_index: int + :param search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type search_prepared: 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 @@ -6389,10 +6488,12 @@ def get_isotope_pattern_annotation( :return: Returns the result object. """ # noqa: E501 - _param = self._get_isotope_pattern_annotation_serialize( + _param = self._get_formula_annotated_spectrum_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, formula_id=formula_id, + spectrum_index=spectrum_index, + search_prepared=search_prepared, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -6400,7 +6501,7 @@ def get_isotope_pattern_annotation( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "IsotopePatternAnnotation", + '200': "AnnotatedSpectrum", } response_data = self.api_client.call_api( *_param, @@ -6414,11 +6515,13 @@ def get_isotope_pattern_annotation( @validate_call - def get_isotope_pattern_annotation_with_http_info( + def get_formula_annotated_spectrum_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + spectrum_index: Annotated[Optional[StrictInt], Field(description="index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)")] = None, + search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -6431,10 +6534,10 @@ def get_isotope_pattern_annotation_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[IsotopePatternAnnotation]: - """Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. + ) -> ApiResponse[AnnotatedSpectrum]: + """Returns a fragmentation spectrum (e - Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore). + Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier
These annotations are only available if a fragmentation tree is available. :param project_id: project-space to read from. (required) :type project_id: str @@ -6442,6 +6545,10 @@ def get_isotope_pattern_annotation_with_http_info( :type aligned_feature_id: str :param formula_id: identifier of the requested formula result (required) :type formula_id: str + :param spectrum_index: index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) + :type spectrum_index: int + :param search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type search_prepared: 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 @@ -6464,10 +6571,12 @@ def get_isotope_pattern_annotation_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_isotope_pattern_annotation_serialize( + _param = self._get_formula_annotated_spectrum_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, formula_id=formula_id, + spectrum_index=spectrum_index, + search_prepared=search_prepared, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -6475,7 +6584,7 @@ def get_isotope_pattern_annotation_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "IsotopePatternAnnotation", + '200': "AnnotatedSpectrum", } response_data = self.api_client.call_api( *_param, @@ -6489,11 +6598,13 @@ def get_isotope_pattern_annotation_with_http_info( @validate_call - def get_isotope_pattern_annotation_without_preload_content( + def get_formula_annotated_spectrum_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + spectrum_index: Annotated[Optional[StrictInt], Field(description="index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)")] = None, + search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -6507,9 +6618,9 @@ def get_isotope_pattern_annotation_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. + """Returns a fragmentation spectrum (e - Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore). + Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier
These annotations are only available if a fragmentation tree is available. :param project_id: project-space to read from. (required) :type project_id: str @@ -6517,6 +6628,10 @@ def get_isotope_pattern_annotation_without_preload_content( :type aligned_feature_id: str :param formula_id: identifier of the requested formula result (required) :type formula_id: str + :param spectrum_index: index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) + :type spectrum_index: int + :param search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type search_prepared: 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 @@ -6539,10 +6654,12 @@ def get_isotope_pattern_annotation_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_isotope_pattern_annotation_serialize( + _param = self._get_formula_annotated_spectrum_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, formula_id=formula_id, + spectrum_index=spectrum_index, + search_prepared=search_prepared, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -6550,7 +6667,7 @@ def get_isotope_pattern_annotation_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "IsotopePatternAnnotation", + '200': "AnnotatedSpectrum", } response_data = self.api_client.call_api( *_param, @@ -6559,11 +6676,13 @@ def get_isotope_pattern_annotation_without_preload_content( return response_data.response - def _get_isotope_pattern_annotation_serialize( + def _get_formula_annotated_spectrum_serialize( self, project_id, aligned_feature_id, formula_id, + spectrum_index, + search_prepared, _request_auth, _content_type, _headers, @@ -6590,6 +6709,14 @@ def _get_isotope_pattern_annotation_serialize( if formula_id is not None: _path_params['formulaId'] = formula_id # process the query parameters + if spectrum_index is not None: + + _query_params.append(('spectrumIndex', spectrum_index)) + + if search_prepared is not None: + + _query_params.append(('searchPrepared', search_prepared)) + # process the header parameters # process the form parameters # process the body parameter @@ -6609,7 +6736,7 @@ def _get_isotope_pattern_annotation_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -6626,11 +6753,13 @@ def _get_isotope_pattern_annotation_serialize( @validate_call - def get_lipid_annotation( + def get_formula_candidate( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[FormulaCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -6643,10 +6772,10 @@ def get_lipid_annotation( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> LipidAnnotation: - """Returns Lipid annotation (ElGordo) for the given formula result identifier. + ) -> FormulaCandidate: + """FormulaResultContainers for the given 'formulaId' with minimal information. - Returns Lipid annotation (ElGordo) for the given formula result identifier. ElGordo lipid annotation runs as part of the SIRIUS formula identification step. + FormulaResultContainers for the given 'formulaId' with minimal information. Can be enriched with an optional results overview and formula candidate information. :param project_id: project-space to read from. (required) :type project_id: str @@ -6654,6 +6783,10 @@ def get_lipid_annotation( :type aligned_feature_id: str :param formula_id: identifier of the requested formula result (required) :type formula_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[FormulaCandidateOptField] :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 @@ -6676,10 +6809,12 @@ def get_lipid_annotation( :return: Returns the result object. """ # noqa: E501 - _param = self._get_lipid_annotation_serialize( + _param = self._get_formula_candidate_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, formula_id=formula_id, + ms_data_search_prepared=ms_data_search_prepared, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -6687,7 +6822,7 @@ def get_lipid_annotation( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "LipidAnnotation", + '200': "FormulaCandidate", } response_data = self.api_client.call_api( *_param, @@ -6701,11 +6836,13 @@ def get_lipid_annotation( @validate_call - def get_lipid_annotation_with_http_info( + def get_formula_candidate_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[FormulaCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -6718,10 +6855,10 @@ def get_lipid_annotation_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[LipidAnnotation]: - """Returns Lipid annotation (ElGordo) for the given formula result identifier. + ) -> ApiResponse[FormulaCandidate]: + """FormulaResultContainers for the given 'formulaId' with minimal information. - Returns Lipid annotation (ElGordo) for the given formula result identifier. ElGordo lipid annotation runs as part of the SIRIUS formula identification step. + FormulaResultContainers for the given 'formulaId' with minimal information. Can be enriched with an optional results overview and formula candidate information. :param project_id: project-space to read from. (required) :type project_id: str @@ -6729,6 +6866,10 @@ def get_lipid_annotation_with_http_info( :type aligned_feature_id: str :param formula_id: identifier of the requested formula result (required) :type formula_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[FormulaCandidateOptField] :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 @@ -6751,10 +6892,12 @@ def get_lipid_annotation_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_lipid_annotation_serialize( + _param = self._get_formula_candidate_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, formula_id=formula_id, + ms_data_search_prepared=ms_data_search_prepared, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -6762,7 +6905,7 @@ def get_lipid_annotation_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "LipidAnnotation", + '200': "FormulaCandidate", } response_data = self.api_client.call_api( *_param, @@ -6776,11 +6919,13 @@ def get_lipid_annotation_with_http_info( @validate_call - def get_lipid_annotation_without_preload_content( + def get_formula_candidate_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[FormulaCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -6794,9 +6939,9 @@ def get_lipid_annotation_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Returns Lipid annotation (ElGordo) for the given formula result identifier. + """FormulaResultContainers for the given 'formulaId' with minimal information. - Returns Lipid annotation (ElGordo) for the given formula result identifier. ElGordo lipid annotation runs as part of the SIRIUS formula identification step. + FormulaResultContainers for the given 'formulaId' with minimal information. Can be enriched with an optional results overview and formula candidate information. :param project_id: project-space to read from. (required) :type project_id: str @@ -6804,6 +6949,10 @@ def get_lipid_annotation_without_preload_content( :type aligned_feature_id: str :param formula_id: identifier of the requested formula result (required) :type formula_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[FormulaCandidateOptField] :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 @@ -6826,10 +6975,12 @@ def get_lipid_annotation_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_lipid_annotation_serialize( + _param = self._get_formula_candidate_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, formula_id=formula_id, + ms_data_search_prepared=ms_data_search_prepared, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -6837,7 +6988,7 @@ def get_lipid_annotation_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "LipidAnnotation", + '200': "FormulaCandidate", } response_data = self.api_client.call_api( *_param, @@ -6846,11 +6997,13 @@ def get_lipid_annotation_without_preload_content( return response_data.response - def _get_lipid_annotation_serialize( + def _get_formula_candidate_serialize( self, project_id, aligned_feature_id, formula_id, + ms_data_search_prepared, + opt_fields, _request_auth, _content_type, _headers, @@ -6860,6 +7013,7 @@ def _get_lipid_annotation_serialize( _host = None _collection_formats: Dict[str, str] = { + 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -6877,6 +7031,14 @@ def _get_lipid_annotation_serialize( if formula_id is not None: _path_params['formulaId'] = formula_id # process the query parameters + if ms_data_search_prepared is not None: + + _query_params.append(('msDataSearchPrepared', ms_data_search_prepared)) + + if opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) + # process the header parameters # process the form parameters # process the body parameter @@ -6896,7 +7058,7 @@ def _get_lipid_annotation_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -6913,10 +7075,12 @@ def _get_lipid_annotation_serialize( @validate_call - def get_ms_data( + def get_formula_candidates( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the Mass Spec data belong sto.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[FormulaCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -6929,15 +7093,19 @@ def get_ms_data( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> MsData: - """Mass Spec data (input data) for the given 'alignedFeatureId' . + ) -> List[FormulaCandidate]: + """List of FormulaResultContainers available for this feature with minimal information. - Mass Spec data (input data) for the given 'alignedFeatureId' . + List of FormulaResultContainers available for this feature with minimal information. Can be enriched with an optional results overview. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the Mass Spec data belong sto. (required) + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[FormulaCandidateOptField] :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 @@ -6960,9 +7128,11 @@ def get_ms_data( :return: Returns the result object. """ # noqa: E501 - _param = self._get_ms_data_serialize( + _param = self._get_formula_candidates_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, + ms_data_search_prepared=ms_data_search_prepared, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -6970,7 +7140,7 @@ def get_ms_data( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "MsData", + '200': "List[FormulaCandidate]", } response_data = self.api_client.call_api( *_param, @@ -6984,10 +7154,12 @@ def get_ms_data( @validate_call - def get_ms_data_with_http_info( + def get_formula_candidates_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the Mass Spec data belong sto.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[FormulaCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -7000,15 +7172,19 @@ def get_ms_data_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[MsData]: - """Mass Spec data (input data) for the given 'alignedFeatureId' . + ) -> ApiResponse[List[FormulaCandidate]]: + """List of FormulaResultContainers available for this feature with minimal information. - Mass Spec data (input data) for the given 'alignedFeatureId' . + List of FormulaResultContainers available for this feature with minimal information. Can be enriched with an optional results overview. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the Mass Spec data belong sto. (required) + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[FormulaCandidateOptField] :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 @@ -7031,9 +7207,11 @@ def get_ms_data_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_ms_data_serialize( + _param = self._get_formula_candidates_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, + ms_data_search_prepared=ms_data_search_prepared, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -7041,7 +7219,7 @@ def get_ms_data_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "MsData", + '200': "List[FormulaCandidate]", } response_data = self.api_client.call_api( *_param, @@ -7055,10 +7233,12 @@ def get_ms_data_with_http_info( @validate_call - def get_ms_data_without_preload_content( + def get_formula_candidates_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the Mass Spec data belong sto.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[FormulaCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -7072,14 +7252,18 @@ def get_ms_data_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Mass Spec data (input data) for the given 'alignedFeatureId' . + """List of FormulaResultContainers available for this feature with minimal information. - Mass Spec data (input data) for the given 'alignedFeatureId' . + List of FormulaResultContainers available for this feature with minimal information. Can be enriched with an optional results overview. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the Mass Spec data belong sto. (required) + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[FormulaCandidateOptField] :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 @@ -7102,9 +7286,11 @@ def get_ms_data_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_ms_data_serialize( + _param = self._get_formula_candidates_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, + ms_data_search_prepared=ms_data_search_prepared, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -7112,7 +7298,7 @@ def get_ms_data_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "MsData", + '200': "List[FormulaCandidate]", } response_data = self.api_client.call_api( *_param, @@ -7121,10 +7307,12 @@ def get_ms_data_without_preload_content( return response_data.response - def _get_ms_data_serialize( + def _get_formula_candidates_serialize( self, project_id, aligned_feature_id, + ms_data_search_prepared, + opt_fields, _request_auth, _content_type, _headers, @@ -7134,6 +7322,7 @@ def _get_ms_data_serialize( _host = None _collection_formats: Dict[str, str] = { + 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -7149,6 +7338,14 @@ def _get_ms_data_serialize( if aligned_feature_id is not None: _path_params['alignedFeatureId'] = aligned_feature_id # process the query parameters + if ms_data_search_prepared is not None: + + _query_params.append(('msDataSearchPrepared', ms_data_search_prepared)) + + if opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) + # process the header parameters # process the form parameters # process the body parameter @@ -7168,7 +7365,7 @@ def _get_ms_data_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/ms-data', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -7185,11 +7382,15 @@ def _get_ms_data_serialize( @validate_call - def get_quantification_experimental( + def get_formula_candidates_paged( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature which intensities should be read out")], - type: Annotated[Optional[QuantificationMeasure], Field(description="quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[FormulaCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -7202,17 +7403,25 @@ def get_quantification_experimental( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> QuantificationTableExperimental: - """EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + ) -> PagedModelFormulaCandidate: + """Page of FormulaResultContainers available for this feature with minimal information. - Returns a single quantification table row for the given feature. The quantification table contains the intensity of the feature within all samples it is contained in. + Page of FormulaResultContainers available for this feature with minimal information. Can be enriched with an optional results overview. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature which intensities should be read out (required) + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str - :param type: quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex. - :type type: QuantificationMeasure + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[FormulaCandidateOptField] :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 @@ -7235,10 +7444,14 @@ def get_quantification_experimental( :return: Returns the result object. """ # noqa: E501 - _param = self._get_quantification_experimental_serialize( + _param = self._get_formula_candidates_paged_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - type=type, + page=page, + size=size, + sort=sort, + ms_data_search_prepared=ms_data_search_prepared, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -7246,7 +7459,7 @@ def get_quantification_experimental( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "QuantificationTableExperimental", + '200': "PagedModelFormulaCandidate", } response_data = self.api_client.call_api( *_param, @@ -7260,11 +7473,15 @@ def get_quantification_experimental( @validate_call - def get_quantification_experimental_with_http_info( + def get_formula_candidates_paged_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature which intensities should be read out")], - type: Annotated[Optional[QuantificationMeasure], Field(description="quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[FormulaCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -7277,17 +7494,25 @@ def get_quantification_experimental_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[QuantificationTableExperimental]: - """EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + ) -> ApiResponse[PagedModelFormulaCandidate]: + """Page of FormulaResultContainers available for this feature with minimal information. - Returns a single quantification table row for the given feature. The quantification table contains the intensity of the feature within all samples it is contained in. + Page of FormulaResultContainers available for this feature with minimal information. Can be enriched with an optional results overview. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature which intensities should be read out (required) + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str - :param type: quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex. - :type type: QuantificationMeasure + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[FormulaCandidateOptField] :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 @@ -7310,10 +7535,14 @@ def get_quantification_experimental_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_quantification_experimental_serialize( + _param = self._get_formula_candidates_paged_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - type=type, + page=page, + size=size, + sort=sort, + ms_data_search_prepared=ms_data_search_prepared, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -7321,7 +7550,7 @@ def get_quantification_experimental_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "QuantificationTableExperimental", + '200': "PagedModelFormulaCandidate", } response_data = self.api_client.call_api( *_param, @@ -7335,11 +7564,15 @@ def get_quantification_experimental_with_http_info( @validate_call - def get_quantification_experimental_without_preload_content( + def get_formula_candidates_paged_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature which intensities should be read out")], - type: Annotated[Optional[QuantificationMeasure], Field(description="quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, + opt_fields: Annotated[Optional[List[FormulaCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -7353,16 +7586,24 @@ def get_quantification_experimental_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + """Page of FormulaResultContainers available for this feature with minimal information. - Returns a single quantification table row for the given feature. The quantification table contains the intensity of the feature within all samples it is contained in. + Page of FormulaResultContainers available for this feature with minimal information. Can be enriched with an optional results overview. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature which intensities should be read out (required) + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str - :param type: quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex. - :type type: QuantificationMeasure + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: bool + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[FormulaCandidateOptField] :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 @@ -7385,10 +7626,14 @@ def get_quantification_experimental_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_quantification_experimental_serialize( + _param = self._get_formula_candidates_paged_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - type=type, + page=page, + size=size, + sort=sort, + ms_data_search_prepared=ms_data_search_prepared, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -7396,7 +7641,7 @@ def get_quantification_experimental_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "QuantificationTableExperimental", + '200': "PagedModelFormulaCandidate", } response_data = self.api_client.call_api( *_param, @@ -7405,11 +7650,15 @@ def get_quantification_experimental_without_preload_content( return response_data.response - def _get_quantification_experimental_serialize( + def _get_formula_candidates_paged_serialize( self, project_id, aligned_feature_id, - type, + page, + size, + sort, + ms_data_search_prepared, + opt_fields, _request_auth, _content_type, _headers, @@ -7419,6 +7668,8 @@ def _get_quantification_experimental_serialize( _host = None _collection_formats: Dict[str, str] = { + 'sort': 'multi', + 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -7434,9 +7685,25 @@ def _get_quantification_experimental_serialize( if aligned_feature_id is not None: _path_params['alignedFeatureId'] = aligned_feature_id # process the query parameters - if type is not None: + if page is not None: - _query_params.append(('type', type.value)) + _query_params.append(('page', page)) + + if size is not None: + + _query_params.append(('size', size)) + + if sort is not None: + + _query_params.append(('sort', sort)) + + if ms_data_search_prepared is not None: + + _query_params.append(('msDataSearchPrepared', ms_data_search_prepared)) + + if opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) # process the header parameters # process the form parameters @@ -7457,7 +7724,7 @@ def _get_quantification_experimental_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quantification', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/page', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -7474,12 +7741,11 @@ def _get_quantification_experimental_serialize( @validate_call - def get_spectral_library_match( + def get_frag_tree( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - match_id: StrictStr, - opt_fields: Optional[List[Optional[SpectralLibraryMatchOptField]]] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -7492,19 +7758,17 @@ def get_spectral_library_match( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> SpectralLibraryMatch: - """List of spectral library matches for the given 'alignedFeatureId'. + ) -> FragmentationTree: + """Returns fragmentation tree (SIRIUS) for the given formula result identifier - List of spectral library matches for the given 'alignedFeatureId'. + Returns fragmentation tree (SIRIUS) for the given formula result identifier
This tree is used to rank formula candidates (treeScore). :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str - :param match_id: (required) - :type match_id: str - :param opt_fields: - :type opt_fields: List[SpectralLibraryMatchOptField] + :param formula_id: identifier of the requested formula result (required) + :type formula_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 @@ -7527,11 +7791,10 @@ def get_spectral_library_match( :return: Returns the result object. """ # noqa: E501 - _param = self._get_spectral_library_match_serialize( + _param = self._get_frag_tree_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - match_id=match_id, - opt_fields=opt_fields, + formula_id=formula_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -7539,7 +7802,7 @@ def get_spectral_library_match( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "SpectralLibraryMatch", + '200': "FragmentationTree", } response_data = self.api_client.call_api( *_param, @@ -7553,12 +7816,11 @@ def get_spectral_library_match( @validate_call - def get_spectral_library_match_with_http_info( + def get_frag_tree_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - match_id: StrictStr, - opt_fields: Optional[List[Optional[SpectralLibraryMatchOptField]]] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -7571,19 +7833,17 @@ def get_spectral_library_match_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[SpectralLibraryMatch]: - """List of spectral library matches for the given 'alignedFeatureId'. + ) -> ApiResponse[FragmentationTree]: + """Returns fragmentation tree (SIRIUS) for the given formula result identifier - List of spectral library matches for the given 'alignedFeatureId'. + Returns fragmentation tree (SIRIUS) for the given formula result identifier
This tree is used to rank formula candidates (treeScore). :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str - :param match_id: (required) - :type match_id: str - :param opt_fields: - :type opt_fields: List[SpectralLibraryMatchOptField] + :param formula_id: identifier of the requested formula result (required) + :type formula_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 @@ -7606,11 +7866,10 @@ def get_spectral_library_match_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_spectral_library_match_serialize( + _param = self._get_frag_tree_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - match_id=match_id, - opt_fields=opt_fields, + formula_id=formula_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -7618,7 +7877,7 @@ def get_spectral_library_match_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "SpectralLibraryMatch", + '200': "FragmentationTree", } response_data = self.api_client.call_api( *_param, @@ -7632,12 +7891,11 @@ def get_spectral_library_match_with_http_info( @validate_call - def get_spectral_library_match_without_preload_content( + def get_frag_tree_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - match_id: StrictStr, - opt_fields: Optional[List[Optional[SpectralLibraryMatchOptField]]] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -7651,18 +7909,16 @@ def get_spectral_library_match_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """List of spectral library matches for the given 'alignedFeatureId'. + """Returns fragmentation tree (SIRIUS) for the given formula result identifier - List of spectral library matches for the given 'alignedFeatureId'. + Returns fragmentation tree (SIRIUS) for the given formula result identifier
This tree is used to rank formula candidates (treeScore). :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str - :param match_id: (required) - :type match_id: str - :param opt_fields: - :type opt_fields: List[SpectralLibraryMatchOptField] + :param formula_id: identifier of the requested formula result (required) + :type formula_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 @@ -7685,11 +7941,10 @@ def get_spectral_library_match_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_spectral_library_match_serialize( + _param = self._get_frag_tree_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - match_id=match_id, - opt_fields=opt_fields, + formula_id=formula_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -7697,7 +7952,7 @@ def get_spectral_library_match_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "SpectralLibraryMatch", + '200': "FragmentationTree", } response_data = self.api_client.call_api( *_param, @@ -7706,12 +7961,11 @@ def get_spectral_library_match_without_preload_content( return response_data.response - def _get_spectral_library_match_serialize( + def _get_frag_tree_serialize( self, project_id, aligned_feature_id, - match_id, - opt_fields, + formula_id, _request_auth, _content_type, _headers, @@ -7721,7 +7975,6 @@ def _get_spectral_library_match_serialize( _host = None _collection_formats: Dict[str, str] = { - 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -7736,13 +7989,9 @@ def _get_spectral_library_match_serialize( _path_params['projectId'] = project_id if aligned_feature_id is not None: _path_params['alignedFeatureId'] = aligned_feature_id - if match_id is not None: - _path_params['matchId'] = match_id + if formula_id is not None: + _path_params['formulaId'] = formula_id # process the query parameters - if opt_fields is not None: - - _query_params.append(('optFields', opt_fields)) - # process the header parameters # process the form parameters # process the body parameter @@ -7762,7 +8011,7 @@ def _get_spectral_library_match_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -7779,14 +8028,2370 @@ def _get_spectral_library_match_serialize( @validate_call - def get_spectral_library_matches( + def get_isotope_pattern_annotation( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - min_shared_peaks: Optional[StrictInt] = None, - min_similarity: Optional[float] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + _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, + ) -> IsotopePatternAnnotation: + """Returns Isotope pattern information for given formulaId + + Returns Isotope pattern information for given formulaId
Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore). + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) + :type aligned_feature_id: str + :param formula_id: identifier of the requested formula result (required) + :type formula_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._get_isotope_pattern_annotation_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + formula_id=formula_id, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "IsotopePatternAnnotation", + } + 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_isotope_pattern_annotation_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + _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[IsotopePatternAnnotation]: + """Returns Isotope pattern information for given formulaId + + Returns Isotope pattern information for given formulaId
Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore). + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) + :type aligned_feature_id: str + :param formula_id: identifier of the requested formula result (required) + :type formula_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._get_isotope_pattern_annotation_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + formula_id=formula_id, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "IsotopePatternAnnotation", + } + 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_isotope_pattern_annotation_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + _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: + """Returns Isotope pattern information for given formulaId + + Returns Isotope pattern information for given formulaId
Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore). + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) + :type aligned_feature_id: str + :param formula_id: identifier of the requested formula result (required) + :type formula_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._get_isotope_pattern_annotation_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + formula_id=formula_id, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "IsotopePatternAnnotation", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_isotope_pattern_annotation_serialize( + self, + project_id, + aligned_feature_id, + formula_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, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + if aligned_feature_id is not None: + _path_params['alignedFeatureId'] = aligned_feature_id + if formula_id is not None: + _path_params['formulaId'] = formula_id + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern', + 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_lipid_annotation( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + _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, + ) -> LipidAnnotation: + """Returns Lipid annotation (ElGordo) for the given formulaId + + Returns Lipid annotation (ElGordo) for the given formulaId.
ElGordo lipid annotation runs as part of the SIRIUS formula identification step. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) + :type aligned_feature_id: str + :param formula_id: identifier of the requested formula result (required) + :type formula_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._get_lipid_annotation_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + formula_id=formula_id, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "LipidAnnotation", + } + 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_lipid_annotation_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + _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[LipidAnnotation]: + """Returns Lipid annotation (ElGordo) for the given formulaId + + Returns Lipid annotation (ElGordo) for the given formulaId.
ElGordo lipid annotation runs as part of the SIRIUS formula identification step. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) + :type aligned_feature_id: str + :param formula_id: identifier of the requested formula result (required) + :type formula_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._get_lipid_annotation_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + formula_id=formula_id, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "LipidAnnotation", + } + 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_lipid_annotation_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + _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: + """Returns Lipid annotation (ElGordo) for the given formulaId + + Returns Lipid annotation (ElGordo) for the given formulaId.
ElGordo lipid annotation runs as part of the SIRIUS formula identification step. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) + :type aligned_feature_id: str + :param formula_id: identifier of the requested formula result (required) + :type formula_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._get_lipid_annotation_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + formula_id=formula_id, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "LipidAnnotation", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_lipid_annotation_serialize( + self, + project_id, + aligned_feature_id, + formula_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, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + if aligned_feature_id is not None: + _path_params['alignedFeatureId'] = aligned_feature_id + if formula_id is not None: + _path_params['formulaId'] = formula_id + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation', + 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_ms_data( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the Mass Spec data belongs to.")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = 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, + ) -> MsData: + """Mass Spec data (input data) for the given 'alignedFeatureId' . + + Mass Spec data (input data) for the given 'alignedFeatureId' . + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature (aligned over runs) the Mass Spec data belongs to. (required) + :type aligned_feature_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: 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._get_ms_data_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + ms_data_search_prepared=ms_data_search_prepared, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "MsData", + } + 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_ms_data_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the Mass Spec data belongs to.")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = 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[MsData]: + """Mass Spec data (input data) for the given 'alignedFeatureId' . + + Mass Spec data (input data) for the given 'alignedFeatureId' . + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature (aligned over runs) the Mass Spec data belongs to. (required) + :type aligned_feature_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: 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._get_ms_data_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + ms_data_search_prepared=ms_data_search_prepared, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "MsData", + } + 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_ms_data_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the Mass Spec data belongs to.")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = 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: + """Mass Spec data (input data) for the given 'alignedFeatureId' . + + Mass Spec data (input data) for the given 'alignedFeatureId' . + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature (aligned over runs) the Mass Spec data belongs to. (required) + :type aligned_feature_id: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: 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._get_ms_data_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + ms_data_search_prepared=ms_data_search_prepared, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "MsData", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_ms_data_serialize( + self, + project_id, + aligned_feature_id, + ms_data_search_prepared, + _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, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + if aligned_feature_id is not None: + _path_params['alignedFeatureId'] = aligned_feature_id + # process the query parameters + if ms_data_search_prepared is not None: + + _query_params.append(('msDataSearchPrepared', ms_data_search_prepared)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/aligned-features/{alignedFeatureId}/ms-data', + 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_quant_table_row_experimental( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature which quantity should be read out")], + type: Annotated[Optional[QuantMeasure], Field(description="quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex.")] = 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, + ) -> QuantTableExperimental: + """[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId) + + [EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId).
The quantification table contains a quantity of the feature within all samples it is contained in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature which quantity should be read out (required) + :type aligned_feature_id: str + :param type: quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex. + :type type: QuantMeasure + :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_quant_table_row_experimental_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + type=type, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "QuantTableExperimental", + } + 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_quant_table_row_experimental_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature which quantity should be read out")], + type: Annotated[Optional[QuantMeasure], Field(description="quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex.")] = 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[QuantTableExperimental]: + """[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId) + + [EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId).
The quantification table contains a quantity of the feature within all samples it is contained in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature which quantity should be read out (required) + :type aligned_feature_id: str + :param type: quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex. + :type type: QuantMeasure + :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_quant_table_row_experimental_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + type=type, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "QuantTableExperimental", + } + 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_quant_table_row_experimental_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature which quantity should be read out")], + type: Annotated[Optional[QuantMeasure], Field(description="quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex.")] = 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: + """[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId) + + [EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId).
The quantification table contains a quantity of the feature within all samples it is contained in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature which quantity should be read out (required) + :type aligned_feature_id: str + :param type: quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex. + :type type: QuantMeasure + :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_quant_table_row_experimental_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + type=type, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "QuantTableExperimental", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_quant_table_row_experimental_serialize( + self, + project_id, + aligned_feature_id, + type, + _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, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + if aligned_feature_id is not None: + _path_params['alignedFeatureId'] = aligned_feature_id + # process the query parameters + if type is not None: + + _query_params.append(('type', type.value)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/aligned-features/{alignedFeatureId}/quant-table-row', + 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_spectral_library_match( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + match_id: Annotated[StrictStr, Field(description="id of the library match to be returned.")], + opt_fields: Optional[List[SpectralLibraryMatchOptField]] = 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, + ) -> SpectralLibraryMatch: + """Spectral library match for the given 'alignedFeatureId'. + + Spectral library match for the given 'alignedFeatureId'. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :type aligned_feature_id: str + :param match_id: id of the library match to be returned. (required) + :type match_id: str + :param opt_fields: + :type opt_fields: List[SpectralLibraryMatchOptField] + :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_spectral_library_match_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + match_id=match_id, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "SpectralLibraryMatch", + } + 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_spectral_library_match_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + match_id: Annotated[StrictStr, Field(description="id of the library match to be returned.")], + opt_fields: Optional[List[SpectralLibraryMatchOptField]] = 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[SpectralLibraryMatch]: + """Spectral library match for the given 'alignedFeatureId'. + + Spectral library match for the given 'alignedFeatureId'. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :type aligned_feature_id: str + :param match_id: id of the library match to be returned. (required) + :type match_id: str + :param opt_fields: + :type opt_fields: List[SpectralLibraryMatchOptField] + :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_spectral_library_match_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + match_id=match_id, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "SpectralLibraryMatch", + } + 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_spectral_library_match_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + match_id: Annotated[StrictStr, Field(description="id of the library match to be returned.")], + opt_fields: Optional[List[SpectralLibraryMatchOptField]] = 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: + """Spectral library match for the given 'alignedFeatureId'. + + Spectral library match for the given 'alignedFeatureId'. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :type aligned_feature_id: str + :param match_id: id of the library match to be returned. (required) + :type match_id: str + :param opt_fields: + :type opt_fields: List[SpectralLibraryMatchOptField] + :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_spectral_library_match_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + match_id=match_id, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "SpectralLibraryMatch", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_spectral_library_match_serialize( + self, + project_id, + aligned_feature_id, + match_id, + opt_fields, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + 'optFields': 'multi', + } + + _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, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + if aligned_feature_id is not None: + _path_params['alignedFeatureId'] = aligned_feature_id + if match_id is not None: + _path_params['matchId'] = match_id + # process the query parameters + if opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}', + 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_spectral_library_matches( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + min_shared_peaks: Optional[StrictInt] = None, + min_similarity: Optional[float] = None, + inchi_key: Optional[StrictStr] = None, + opt_fields: Optional[List[SpectralLibraryMatchOptField]] = 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, + ) -> List[SpectralLibraryMatch]: + """List of spectral library matches for the given 'alignedFeatureId'. + + List of spectral library matches for the given 'alignedFeatureId'. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :type aligned_feature_id: str + :param min_shared_peaks: + :type min_shared_peaks: int + :param min_similarity: + :type min_similarity: float + :param inchi_key: + :type inchi_key: str + :param opt_fields: + :type opt_fields: List[SpectralLibraryMatchOptField] + :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_spectral_library_matches_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + min_shared_peaks=min_shared_peaks, + min_similarity=min_similarity, + inchi_key=inchi_key, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[SpectralLibraryMatch]", + } + 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_spectral_library_matches_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + min_shared_peaks: Optional[StrictInt] = None, + min_similarity: Optional[float] = None, + inchi_key: Optional[StrictStr] = None, + opt_fields: Optional[List[SpectralLibraryMatchOptField]] = 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[List[SpectralLibraryMatch]]: + """List of spectral library matches for the given 'alignedFeatureId'. + + List of spectral library matches for the given 'alignedFeatureId'. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :type aligned_feature_id: str + :param min_shared_peaks: + :type min_shared_peaks: int + :param min_similarity: + :type min_similarity: float + :param inchi_key: + :type inchi_key: str + :param opt_fields: + :type opt_fields: List[SpectralLibraryMatchOptField] + :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_spectral_library_matches_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + min_shared_peaks=min_shared_peaks, + min_similarity=min_similarity, + inchi_key=inchi_key, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[SpectralLibraryMatch]", + } + 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_spectral_library_matches_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + min_shared_peaks: Optional[StrictInt] = None, + min_similarity: Optional[float] = None, + inchi_key: Optional[StrictStr] = None, + opt_fields: Optional[List[SpectralLibraryMatchOptField]] = 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: + """List of spectral library matches for the given 'alignedFeatureId'. + + List of spectral library matches for the given 'alignedFeatureId'. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :type aligned_feature_id: str + :param min_shared_peaks: + :type min_shared_peaks: int + :param min_similarity: + :type min_similarity: float + :param inchi_key: + :type inchi_key: str + :param opt_fields: + :type opt_fields: List[SpectralLibraryMatchOptField] + :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_spectral_library_matches_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + min_shared_peaks=min_shared_peaks, + min_similarity=min_similarity, + inchi_key=inchi_key, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[SpectralLibraryMatch]", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_spectral_library_matches_serialize( + self, + project_id, + aligned_feature_id, + min_shared_peaks, + min_similarity, + inchi_key, + opt_fields, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + 'optFields': 'multi', + } + + _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, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + if aligned_feature_id is not None: + _path_params['alignedFeatureId'] = aligned_feature_id + # process the query parameters + if min_shared_peaks is not None: + + _query_params.append(('minSharedPeaks', min_shared_peaks)) + + if min_similarity is not None: + + _query_params.append(('minSimilarity', min_similarity)) + + if inchi_key is not None: + + _query_params.append(('inchiKey', inchi_key)) + + if opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches', + 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_spectral_library_matches_paged( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + min_shared_peaks: Optional[StrictInt] = None, + min_similarity: Optional[float] = None, + inchi_key: Optional[StrictStr] = None, + opt_fields: Optional[List[SpectralLibraryMatchOptField]] = 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, + ) -> PagedModelSpectralLibraryMatch: + """Page of spectral library matches for the given 'alignedFeatureId'. + + Page of spectral library matches for the given 'alignedFeatureId'. If a 'inchiKey' (2D) is provided, returns only matches for the database compound with the given InChI key. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :type aligned_feature_id: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param min_shared_peaks: + :type min_shared_peaks: int + :param min_similarity: + :type min_similarity: float + :param inchi_key: + :type inchi_key: str + :param opt_fields: + :type opt_fields: List[SpectralLibraryMatchOptField] + :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_spectral_library_matches_paged_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + page=page, + size=size, + sort=sort, + min_shared_peaks=min_shared_peaks, + min_similarity=min_similarity, + inchi_key=inchi_key, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "PagedModelSpectralLibraryMatch", + } + 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_spectral_library_matches_paged_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + min_shared_peaks: Optional[StrictInt] = None, + min_similarity: Optional[float] = None, + inchi_key: Optional[StrictStr] = None, + opt_fields: Optional[List[SpectralLibraryMatchOptField]] = 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[PagedModelSpectralLibraryMatch]: + """Page of spectral library matches for the given 'alignedFeatureId'. + + Page of spectral library matches for the given 'alignedFeatureId'. If a 'inchiKey' (2D) is provided, returns only matches for the database compound with the given InChI key. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :type aligned_feature_id: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param min_shared_peaks: + :type min_shared_peaks: int + :param min_similarity: + :type min_similarity: float + :param inchi_key: + :type inchi_key: str + :param opt_fields: + :type opt_fields: List[SpectralLibraryMatchOptField] + :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_spectral_library_matches_paged_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + page=page, + size=size, + sort=sort, + min_shared_peaks=min_shared_peaks, + min_similarity=min_similarity, + inchi_key=inchi_key, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "PagedModelSpectralLibraryMatch", + } + 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_spectral_library_matches_paged_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + min_shared_peaks: Optional[StrictInt] = None, + min_similarity: Optional[float] = None, inchi_key: Optional[StrictStr] = None, - opt_fields: Optional[List[Optional[SpectralLibraryMatchOptField]]] = None, + opt_fields: Optional[List[SpectralLibraryMatchOptField]] = 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: + """Page of spectral library matches for the given 'alignedFeatureId'. + + Page of spectral library matches for the given 'alignedFeatureId'. If a 'inchiKey' (2D) is provided, returns only matches for the database compound with the given InChI key. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :type aligned_feature_id: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param min_shared_peaks: + :type min_shared_peaks: int + :param min_similarity: + :type min_similarity: float + :param inchi_key: + :type inchi_key: str + :param opt_fields: + :type opt_fields: List[SpectralLibraryMatchOptField] + :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_spectral_library_matches_paged_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + page=page, + size=size, + sort=sort, + min_shared_peaks=min_shared_peaks, + min_similarity=min_similarity, + inchi_key=inchi_key, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "PagedModelSpectralLibraryMatch", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_spectral_library_matches_paged_serialize( + self, + project_id, + aligned_feature_id, + page, + size, + sort, + min_shared_peaks, + min_similarity, + inchi_key, + opt_fields, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + 'sort': 'multi', + 'optFields': 'multi', + } + + _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, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + if aligned_feature_id is not None: + _path_params['alignedFeatureId'] = aligned_feature_id + # process the query parameters + if page is not None: + + _query_params.append(('page', page)) + + if size is not None: + + _query_params.append(('size', size)) + + if sort is not None: + + _query_params.append(('sort', sort)) + + if min_shared_peaks is not None: + + _query_params.append(('minSharedPeaks', min_shared_peaks)) + + if min_similarity is not None: + + _query_params.append(('minSimilarity', min_similarity)) + + if inchi_key is not None: + + _query_params.append(('inchiKey', inchi_key)) + + if opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/page', + 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_spectral_library_matches_summary( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + min_shared_peaks: Annotated[Optional[StrictInt], Field(description="min threshold of shared peaks.")] = None, + min_similarity: Annotated[Optional[float], Field(description="min spectral similarity threshold.")] = None, + inchi_key: Annotated[Optional[StrictStr], Field(description="2D inchi key of the compound in the structure database.")] = 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, + ) -> SpectralLibraryMatchSummary: + """Summarize matched reference spectra for the given 'alignedFeatureId'. + + Summarize matched reference spectra for the given 'alignedFeatureId'. If a 'inchiKey' (2D) is provided, summarizes only contains matches for the database compound with the given InChI key. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :type aligned_feature_id: str + :param min_shared_peaks: min threshold of shared peaks. + :type min_shared_peaks: int + :param min_similarity: min spectral similarity threshold. + :type min_similarity: float + :param inchi_key: 2D inchi key of the compound in the structure database. + :type inchi_key: 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._get_spectral_library_matches_summary_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + min_shared_peaks=min_shared_peaks, + min_similarity=min_similarity, + inchi_key=inchi_key, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "SpectralLibraryMatchSummary", + } + 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_spectral_library_matches_summary_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + min_shared_peaks: Annotated[Optional[StrictInt], Field(description="min threshold of shared peaks.")] = None, + min_similarity: Annotated[Optional[float], Field(description="min spectral similarity threshold.")] = None, + inchi_key: Annotated[Optional[StrictStr], Field(description="2D inchi key of the compound in the structure database.")] = 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[SpectralLibraryMatchSummary]: + """Summarize matched reference spectra for the given 'alignedFeatureId'. + + Summarize matched reference spectra for the given 'alignedFeatureId'. If a 'inchiKey' (2D) is provided, summarizes only contains matches for the database compound with the given InChI key. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :type aligned_feature_id: str + :param min_shared_peaks: min threshold of shared peaks. + :type min_shared_peaks: int + :param min_similarity: min spectral similarity threshold. + :type min_similarity: float + :param inchi_key: 2D inchi key of the compound in the structure database. + :type inchi_key: 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._get_spectral_library_matches_summary_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + min_shared_peaks=min_shared_peaks, + min_similarity=min_similarity, + inchi_key=inchi_key, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "SpectralLibraryMatchSummary", + } + 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_spectral_library_matches_summary_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + min_shared_peaks: Annotated[Optional[StrictInt], Field(description="min threshold of shared peaks.")] = None, + min_similarity: Annotated[Optional[float], Field(description="min spectral similarity threshold.")] = None, + inchi_key: Annotated[Optional[StrictStr], Field(description="2D inchi key of the compound in the structure database.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -7799,23 +10404,21 @@ def get_spectral_library_matches( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> List[SpectralLibraryMatch]: - """List of spectral library matches for the given 'alignedFeatureId'. + ) -> RESTResponseType: + """Summarize matched reference spectra for the given 'alignedFeatureId'. - List of spectral library matches for the given 'alignedFeatureId'. + Summarize matched reference spectra for the given 'alignedFeatureId'. If a 'inchiKey' (2D) is provided, summarizes only contains matches for the database compound with the given InChI key. :param project_id: project-space to read from. (required) :type project_id: str :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) :type aligned_feature_id: str - :param min_shared_peaks: + :param min_shared_peaks: min threshold of shared peaks. :type min_shared_peaks: int - :param min_similarity: + :param min_similarity: min spectral similarity threshold. :type min_similarity: float - :param inchi_key: + :param inchi_key: 2D inchi key of the compound in the structure database. :type inchi_key: str - :param opt_fields: - :type opt_fields: List[SpectralLibraryMatchOptField] :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 @@ -7838,13 +10441,12 @@ def get_spectral_library_matches( :return: Returns the result object. """ # noqa: E501 - _param = self._get_spectral_library_matches_serialize( + _param = self._get_spectral_library_matches_summary_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, min_shared_peaks=min_shared_peaks, min_similarity=min_similarity, inchi_key=inchi_key, - opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -7852,7 +10454,164 @@ def get_spectral_library_matches( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[SpectralLibraryMatch]", + '200': "SpectralLibraryMatchSummary", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_spectral_library_matches_summary_serialize( + self, + project_id, + aligned_feature_id, + min_shared_peaks, + min_similarity, + inchi_key, + _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, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + if aligned_feature_id is not None: + _path_params['alignedFeatureId'] = aligned_feature_id + # process the query parameters + if min_shared_peaks is not None: + + _query_params.append(('minSharedPeaks', min_shared_peaks)) + + if min_similarity is not None: + + _query_params.append(('minSimilarity', min_similarity)) + + if inchi_key is not None: + + _query_params.append(('inchiKey', inchi_key)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/summary', + 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_structure_annotated_ms_data_experimental( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + inchi_key: Annotated[StrictStr, Field(description="2d InChIKey of the structure candidate to be used to annotate the spectrum annotation")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = 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, + ) -> AnnotatedMsMsData: + """[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey + + [EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey.
Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses for the given formula result identifier and structure candidate inChIKey. These annotations are only available if a fragmentation tree and the structure candidate are available.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) + :type aligned_feature_id: str + :param formula_id: identifier of the requested formula result (required) + :type formula_id: str + :param inchi_key: 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation (required) + :type inchi_key: str + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: 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._get_structure_annotated_ms_data_experimental_serialize( + project_id=project_id, + aligned_feature_id=aligned_feature_id, + formula_id=formula_id, + inchi_key=inchi_key, + ms_data_search_prepared=ms_data_search_prepared, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "AnnotatedMsMsData", } response_data = self.api_client.call_api( *_param, @@ -7866,14 +10625,13 @@ def get_spectral_library_matches( @validate_call - def get_spectral_library_matches_with_http_info( + def get_structure_annotated_ms_data_experimental_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - min_shared_peaks: Optional[StrictInt] = None, - min_similarity: Optional[float] = None, - inchi_key: Optional[StrictStr] = None, - opt_fields: Optional[List[Optional[SpectralLibraryMatchOptField]]] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + inchi_key: Annotated[StrictStr, Field(description="2d InChIKey of the structure candidate to be used to annotate the spectrum annotation")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -7886,23 +10644,21 @@ def get_spectral_library_matches_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[List[SpectralLibraryMatch]]: - """List of spectral library matches for the given 'alignedFeatureId'. + ) -> ApiResponse[AnnotatedMsMsData]: + """[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey - List of spectral library matches for the given 'alignedFeatureId'. + [EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey.
Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses for the given formula result identifier and structure candidate inChIKey. These annotations are only available if a fragmentation tree and the structure candidate are available.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str - :param min_shared_peaks: - :type min_shared_peaks: int - :param min_similarity: - :type min_similarity: float - :param inchi_key: + :param formula_id: identifier of the requested formula result (required) + :type formula_id: str + :param inchi_key: 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation (required) :type inchi_key: str - :param opt_fields: - :type opt_fields: List[SpectralLibraryMatchOptField] + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: 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 @@ -7925,13 +10681,12 @@ def get_spectral_library_matches_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_spectral_library_matches_serialize( + _param = self._get_structure_annotated_ms_data_experimental_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - min_shared_peaks=min_shared_peaks, - min_similarity=min_similarity, + formula_id=formula_id, inchi_key=inchi_key, - opt_fields=opt_fields, + ms_data_search_prepared=ms_data_search_prepared, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -7939,7 +10694,7 @@ def get_spectral_library_matches_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[SpectralLibraryMatch]", + '200': "AnnotatedMsMsData", } response_data = self.api_client.call_api( *_param, @@ -7953,14 +10708,13 @@ def get_spectral_library_matches_with_http_info( @validate_call - def get_spectral_library_matches_without_preload_content( + def get_structure_annotated_ms_data_experimental_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - min_shared_peaks: Optional[StrictInt] = None, - min_similarity: Optional[float] = None, - inchi_key: Optional[StrictStr] = None, - opt_fields: Optional[List[Optional[SpectralLibraryMatchOptField]]] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + inchi_key: Annotated[StrictStr, Field(description="2d InChIKey of the structure candidate to be used to annotate the spectrum annotation")], + ms_data_search_prepared: Annotated[Optional[StrictBool], Field(description="Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -7974,22 +10728,20 @@ def get_spectral_library_matches_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """List of spectral library matches for the given 'alignedFeatureId'. + """[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey - List of spectral library matches for the given 'alignedFeatureId'. + [EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey.
Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses for the given formula result identifier and structure candidate inChIKey. These annotations are only available if a fragmentation tree and the structure candidate are available.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str - :param min_shared_peaks: - :type min_shared_peaks: int - :param min_similarity: - :type min_similarity: float - :param inchi_key: + :param formula_id: identifier of the requested formula result (required) + :type formula_id: str + :param inchi_key: 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation (required) :type inchi_key: str - :param opt_fields: - :type opt_fields: List[SpectralLibraryMatchOptField] + :param ms_data_search_prepared: Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. + :type ms_data_search_prepared: 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 @@ -8012,13 +10764,12 @@ def get_spectral_library_matches_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_spectral_library_matches_serialize( + _param = self._get_structure_annotated_ms_data_experimental_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - min_shared_peaks=min_shared_peaks, - min_similarity=min_similarity, + formula_id=formula_id, inchi_key=inchi_key, - opt_fields=opt_fields, + ms_data_search_prepared=ms_data_search_prepared, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -8026,7 +10777,7 @@ def get_spectral_library_matches_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[SpectralLibraryMatch]", + '200': "AnnotatedMsMsData", } response_data = self.api_client.call_api( *_param, @@ -8035,14 +10786,13 @@ def get_spectral_library_matches_without_preload_content( return response_data.response - def _get_spectral_library_matches_serialize( + def _get_structure_annotated_ms_data_experimental_serialize( self, project_id, aligned_feature_id, - min_shared_peaks, - min_similarity, + formula_id, inchi_key, - opt_fields, + ms_data_search_prepared, _request_auth, _content_type, _headers, @@ -8052,7 +10802,6 @@ def _get_spectral_library_matches_serialize( _host = None _collection_formats: Dict[str, str] = { - 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -8067,22 +10816,14 @@ def _get_spectral_library_matches_serialize( _path_params['projectId'] = project_id if aligned_feature_id is not None: _path_params['alignedFeatureId'] = aligned_feature_id - # process the query parameters - if min_shared_peaks is not None: - - _query_params.append(('minSharedPeaks', min_shared_peaks)) - - if min_similarity is not None: - - _query_params.append(('minSimilarity', min_similarity)) - + if formula_id is not None: + _path_params['formulaId'] = formula_id if inchi_key is not None: + _path_params['inchiKey'] = inchi_key + # process the query parameters + if ms_data_search_prepared is not None: - _query_params.append(('inchiKey', inchi_key)) - - if opt_fields is not None: - - _query_params.append(('optFields', opt_fields)) + _query_params.append(('msDataSearchPrepared', ms_data_search_prepared)) # process the header parameters # process the form parameters @@ -8103,7 +10844,7 @@ def _get_spectral_library_matches_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -8120,17 +10861,11 @@ def _get_spectral_library_matches_serialize( @validate_call - def get_spectral_library_matches_paged( + def get_structure_annotated_spectral_library_match_experimental( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - min_shared_peaks: Optional[StrictInt] = None, - min_similarity: Optional[float] = None, - inchi_key: Optional[StrictStr] = None, - opt_fields: Optional[List[Optional[SpectralLibraryMatchOptField]]] = None, + match_id: Annotated[StrictStr, Field(description="id of the library match to be returned.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -8143,29 +10878,17 @@ def get_spectral_library_matches_paged( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> PagedModelSpectralLibraryMatch: - """Page of spectral library matches for the given 'alignedFeatureId'. + ) -> AnnotatedSpectrum: + """[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations - Page of spectral library matches for the given 'alignedFeatureId'. If a 'inchiKey' (2D) is provided, returns only matches for the database compound with the given InChI key. + [EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. :param project_id: project-space to read from. (required) :type project_id: str :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) :type aligned_feature_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] - :param min_shared_peaks: - :type min_shared_peaks: int - :param min_similarity: - :type min_similarity: float - :param inchi_key: - :type inchi_key: str - :param opt_fields: - :type opt_fields: List[SpectralLibraryMatchOptField] + :param match_id: id of the library match to be returned. (required) + :type match_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 @@ -8188,16 +10911,10 @@ def get_spectral_library_matches_paged( :return: Returns the result object. """ # noqa: E501 - _param = self._get_spectral_library_matches_paged_serialize( + _param = self._get_structure_annotated_spectral_library_match_experimental_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - page=page, - size=size, - sort=sort, - min_shared_peaks=min_shared_peaks, - min_similarity=min_similarity, - inchi_key=inchi_key, - opt_fields=opt_fields, + match_id=match_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -8205,7 +10922,7 @@ def get_spectral_library_matches_paged( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelSpectralLibraryMatch", + '200': "AnnotatedSpectrum", } response_data = self.api_client.call_api( *_param, @@ -8219,17 +10936,11 @@ def get_spectral_library_matches_paged( @validate_call - def get_spectral_library_matches_paged_with_http_info( + def get_structure_annotated_spectral_library_match_experimental_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - min_shared_peaks: Optional[StrictInt] = None, - min_similarity: Optional[float] = None, - inchi_key: Optional[StrictStr] = None, - opt_fields: Optional[List[Optional[SpectralLibraryMatchOptField]]] = None, + match_id: Annotated[StrictStr, Field(description="id of the library match to be returned.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -8242,29 +10953,17 @@ def get_spectral_library_matches_paged_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[PagedModelSpectralLibraryMatch]: - """Page of spectral library matches for the given 'alignedFeatureId'. + ) -> ApiResponse[AnnotatedSpectrum]: + """[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations - Page of spectral library matches for the given 'alignedFeatureId'. If a 'inchiKey' (2D) is provided, returns only matches for the database compound with the given InChI key. + [EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. :param project_id: project-space to read from. (required) :type project_id: str :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) :type aligned_feature_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] - :param min_shared_peaks: - :type min_shared_peaks: int - :param min_similarity: - :type min_similarity: float - :param inchi_key: - :type inchi_key: str - :param opt_fields: - :type opt_fields: List[SpectralLibraryMatchOptField] + :param match_id: id of the library match to be returned. (required) + :type match_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 @@ -8287,16 +10986,10 @@ def get_spectral_library_matches_paged_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_spectral_library_matches_paged_serialize( + _param = self._get_structure_annotated_spectral_library_match_experimental_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - page=page, - size=size, - sort=sort, - min_shared_peaks=min_shared_peaks, - min_similarity=min_similarity, - inchi_key=inchi_key, - opt_fields=opt_fields, + match_id=match_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -8304,7 +10997,7 @@ def get_spectral_library_matches_paged_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelSpectralLibraryMatch", + '200': "AnnotatedSpectrum", } response_data = self.api_client.call_api( *_param, @@ -8318,17 +11011,11 @@ def get_spectral_library_matches_paged_with_http_info( @validate_call - def get_spectral_library_matches_paged_without_preload_content( + def get_structure_annotated_spectral_library_match_experimental_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - min_shared_peaks: Optional[StrictInt] = None, - min_similarity: Optional[float] = None, - inchi_key: Optional[StrictStr] = None, - opt_fields: Optional[List[Optional[SpectralLibraryMatchOptField]]] = None, + match_id: Annotated[StrictStr, Field(description="id of the library match to be returned.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -8342,28 +11029,16 @@ def get_spectral_library_matches_paged_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Page of spectral library matches for the given 'alignedFeatureId'. + """[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations - Page of spectral library matches for the given 'alignedFeatureId'. If a 'inchiKey' (2D) is provided, returns only matches for the database compound with the given InChI key. + [EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. :param project_id: project-space to read from. (required) :type project_id: str :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) :type aligned_feature_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] - :param min_shared_peaks: - :type min_shared_peaks: int - :param min_similarity: - :type min_similarity: float - :param inchi_key: - :type inchi_key: str - :param opt_fields: - :type opt_fields: List[SpectralLibraryMatchOptField] + :param match_id: id of the library match to be returned. (required) + :type match_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 @@ -8386,16 +11061,10 @@ def get_spectral_library_matches_paged_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_spectral_library_matches_paged_serialize( + _param = self._get_structure_annotated_spectral_library_match_experimental_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - page=page, - size=size, - sort=sort, - min_shared_peaks=min_shared_peaks, - min_similarity=min_similarity, - inchi_key=inchi_key, - opt_fields=opt_fields, + match_id=match_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -8403,7 +11072,7 @@ def get_spectral_library_matches_paged_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelSpectralLibraryMatch", + '200': "AnnotatedSpectrum", } response_data = self.api_client.call_api( *_param, @@ -8412,17 +11081,11 @@ def get_spectral_library_matches_paged_without_preload_content( return response_data.response - def _get_spectral_library_matches_paged_serialize( + def _get_structure_annotated_spectral_library_match_experimental_serialize( self, project_id, aligned_feature_id, - page, - size, - sort, - min_shared_peaks, - min_similarity, - inchi_key, - opt_fields, + match_id, _request_auth, _content_type, _headers, @@ -8432,8 +11095,6 @@ def _get_spectral_library_matches_paged_serialize( _host = None _collection_formats: Dict[str, str] = { - 'sort': 'multi', - 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -8448,35 +11109,9 @@ def _get_spectral_library_matches_paged_serialize( _path_params['projectId'] = project_id if aligned_feature_id is not None: _path_params['alignedFeatureId'] = aligned_feature_id + if match_id is not None: + _path_params['matchId'] = match_id # process the query parameters - if page is not None: - - _query_params.append(('page', page)) - - if size is not None: - - _query_params.append(('size', size)) - - if sort is not None: - - _query_params.append(('sort', sort)) - - if min_shared_peaks is not None: - - _query_params.append(('minSharedPeaks', min_shared_peaks)) - - if min_similarity is not None: - - _query_params.append(('minSimilarity', min_similarity)) - - if inchi_key is not None: - - _query_params.append(('inchiKey', inchi_key)) - - if opt_fields is not None: - - _query_params.append(('optFields', opt_fields)) - # process the header parameters # process the form parameters # process the body parameter @@ -8496,7 +11131,7 @@ def _get_spectral_library_matches_paged_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/page', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}/annotated', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -8513,13 +11148,14 @@ def _get_spectral_library_matches_paged_serialize( @validate_call - def get_spectral_library_matches_summary( + def get_structure_annotated_spectrum_experimental( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - min_shared_peaks: Annotated[Optional[StrictInt], Field(description="min threshold of shared peaks.")] = None, - min_similarity: Annotated[Optional[float], Field(description="min spectral similarity threshold.")] = None, - inchi_key: Annotated[Optional[StrictStr], Field(description="2D inchi key of the compound in the structure database.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + inchi_key: Annotated[StrictStr, Field(description="2d InChIKey of the structure candidate to be used to annotate the spectrum annotation")], + spectrum_index: Annotated[Optional[StrictInt], Field(description="index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)")] = None, + search_prepared: Optional[StrictBool] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -8532,21 +11168,23 @@ def get_spectral_library_matches_summary( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> SpectralLibraryMatchSummary: - """Summarize matched reference spectra for the given 'alignedFeatureId'. + ) -> AnnotatedSpectrum: + """[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey - Summarize matched reference spectra for the given 'alignedFeatureId'. If a 'inchiKey' (2D) is provided, summarizes only contains matches for the database compound with the given InChI key. + [EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey
Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the selected formula result These annotations are only available if a fragmentation tree is available.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str - :param min_shared_peaks: min threshold of shared peaks. - :type min_shared_peaks: int - :param min_similarity: min spectral similarity threshold. - :type min_similarity: float - :param inchi_key: 2D inchi key of the compound in the structure database. + :param formula_id: identifier of the requested formula result (required) + :type formula_id: str + :param inchi_key: 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation (required) :type inchi_key: str + :param spectrum_index: index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) + :type spectrum_index: int + :param search_prepared: + :type search_prepared: 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 @@ -8569,12 +11207,13 @@ def get_spectral_library_matches_summary( :return: Returns the result object. """ # noqa: E501 - _param = self._get_spectral_library_matches_summary_serialize( + _param = self._get_structure_annotated_spectrum_experimental_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - min_shared_peaks=min_shared_peaks, - min_similarity=min_similarity, + formula_id=formula_id, inchi_key=inchi_key, + spectrum_index=spectrum_index, + search_prepared=search_prepared, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -8582,7 +11221,7 @@ def get_spectral_library_matches_summary( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "SpectralLibraryMatchSummary", + '200': "AnnotatedSpectrum", } response_data = self.api_client.call_api( *_param, @@ -8596,13 +11235,14 @@ def get_spectral_library_matches_summary( @validate_call - def get_spectral_library_matches_summary_with_http_info( + def get_structure_annotated_spectrum_experimental_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - min_shared_peaks: Annotated[Optional[StrictInt], Field(description="min threshold of shared peaks.")] = None, - min_similarity: Annotated[Optional[float], Field(description="min spectral similarity threshold.")] = None, - inchi_key: Annotated[Optional[StrictStr], Field(description="2D inchi key of the compound in the structure database.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + inchi_key: Annotated[StrictStr, Field(description="2d InChIKey of the structure candidate to be used to annotate the spectrum annotation")], + spectrum_index: Annotated[Optional[StrictInt], Field(description="index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)")] = None, + search_prepared: Optional[StrictBool] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -8615,21 +11255,23 @@ def get_spectral_library_matches_summary_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[SpectralLibraryMatchSummary]: - """Summarize matched reference spectra for the given 'alignedFeatureId'. + ) -> ApiResponse[AnnotatedSpectrum]: + """[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey - Summarize matched reference spectra for the given 'alignedFeatureId'. If a 'inchiKey' (2D) is provided, summarizes only contains matches for the database compound with the given InChI key. + [EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey
Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the selected formula result These annotations are only available if a fragmentation tree is available.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str - :param min_shared_peaks: min threshold of shared peaks. - :type min_shared_peaks: int - :param min_similarity: min spectral similarity threshold. - :type min_similarity: float - :param inchi_key: 2D inchi key of the compound in the structure database. + :param formula_id: identifier of the requested formula result (required) + :type formula_id: str + :param inchi_key: 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation (required) :type inchi_key: str + :param spectrum_index: index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) + :type spectrum_index: int + :param search_prepared: + :type search_prepared: 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 @@ -8652,12 +11294,13 @@ def get_spectral_library_matches_summary_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_spectral_library_matches_summary_serialize( + _param = self._get_structure_annotated_spectrum_experimental_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - min_shared_peaks=min_shared_peaks, - min_similarity=min_similarity, + formula_id=formula_id, inchi_key=inchi_key, + spectrum_index=spectrum_index, + search_prepared=search_prepared, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -8665,7 +11308,7 @@ def get_spectral_library_matches_summary_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "SpectralLibraryMatchSummary", + '200': "AnnotatedSpectrum", } response_data = self.api_client.call_api( *_param, @@ -8679,13 +11322,14 @@ def get_spectral_library_matches_summary_with_http_info( @validate_call - def get_spectral_library_matches_summary_without_preload_content( + def get_structure_annotated_spectrum_experimental_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - min_shared_peaks: Annotated[Optional[StrictInt], Field(description="min threshold of shared peaks.")] = None, - min_similarity: Annotated[Optional[float], Field(description="min spectral similarity threshold.")] = None, - inchi_key: Annotated[Optional[StrictStr], Field(description="2D inchi key of the compound in the structure database.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + inchi_key: Annotated[StrictStr, Field(description="2d InChIKey of the structure candidate to be used to annotate the spectrum annotation")], + spectrum_index: Annotated[Optional[StrictInt], Field(description="index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)")] = None, + search_prepared: Optional[StrictBool] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -8699,20 +11343,22 @@ def get_spectral_library_matches_summary_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Summarize matched reference spectra for the given 'alignedFeatureId'. + """[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey - Summarize matched reference spectra for the given 'alignedFeatureId'. If a 'inchiKey' (2D) is provided, summarizes only contains matches for the database compound with the given InChI key. + [EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey
Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the selected formula result These annotations are only available if a fragmentation tree is available.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str - :param min_shared_peaks: min threshold of shared peaks. - :type min_shared_peaks: int - :param min_similarity: min spectral similarity threshold. - :type min_similarity: float - :param inchi_key: 2D inchi key of the compound in the structure database. + :param formula_id: identifier of the requested formula result (required) + :type formula_id: str + :param inchi_key: 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation (required) :type inchi_key: str + :param spectrum_index: index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) + :type spectrum_index: int + :param search_prepared: + :type search_prepared: 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 @@ -8735,12 +11381,13 @@ def get_spectral_library_matches_summary_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_spectral_library_matches_summary_serialize( + _param = self._get_structure_annotated_spectrum_experimental_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - min_shared_peaks=min_shared_peaks, - min_similarity=min_similarity, + formula_id=formula_id, inchi_key=inchi_key, + spectrum_index=spectrum_index, + search_prepared=search_prepared, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -8748,7 +11395,7 @@ def get_spectral_library_matches_summary_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "SpectralLibraryMatchSummary", + '200': "AnnotatedSpectrum", } response_data = self.api_client.call_api( *_param, @@ -8757,13 +11404,14 @@ def get_spectral_library_matches_summary_without_preload_content( return response_data.response - def _get_spectral_library_matches_summary_serialize( + def _get_structure_annotated_spectrum_experimental_serialize( self, project_id, aligned_feature_id, - min_shared_peaks, - min_similarity, + formula_id, inchi_key, + spectrum_index, + search_prepared, _request_auth, _content_type, _headers, @@ -8787,18 +11435,18 @@ def _get_spectral_library_matches_summary_serialize( _path_params['projectId'] = project_id if aligned_feature_id is not None: _path_params['alignedFeatureId'] = aligned_feature_id + if formula_id is not None: + _path_params['formulaId'] = formula_id + if inchi_key is not None: + _path_params['inchiKey'] = inchi_key # process the query parameters - if min_shared_peaks is not None: - - _query_params.append(('minSharedPeaks', min_shared_peaks)) - - if min_similarity is not None: + if spectrum_index is not None: - _query_params.append(('minSimilarity', min_similarity)) + _query_params.append(('spectrumIndex', spectrum_index)) - if inchi_key is not None: + if search_prepared is not None: - _query_params.append(('inchiKey', inchi_key)) + _query_params.append(('searchPrepared', search_prepared)) # process the header parameters # process the form parameters @@ -8819,7 +11467,7 @@ def _get_spectral_library_matches_summary_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/summary', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -8836,12 +11484,11 @@ def _get_spectral_library_matches_summary_serialize( @validate_call - def get_structure_annotated_ms_data_experimental( + def get_structure_candidates( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - inchi_key: Annotated[StrictStr, Field(description="2d InChIKey of the structure candidate to be used to annotate the spectrum annotation")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -8854,19 +11501,17 @@ def get_structure_annotated_ms_data_experimental( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> AnnotatedMsMsData: - """EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. + ) -> List[StructureCandidateFormula]: + """List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. - Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses for the given formula result identifier and structure candidate inChIKey. These annotations are only available if a fragmentation tree and the structure candidate are available. + List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str - :param inchi_key: 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation (required) - :type inchi_key: str + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[StructureCandidateOptField] :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 @@ -8889,11 +11534,10 @@ def get_structure_annotated_ms_data_experimental( :return: Returns the result object. """ # noqa: E501 - _param = self._get_structure_annotated_ms_data_experimental_serialize( + _param = self._get_structure_candidates_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - formula_id=formula_id, - inchi_key=inchi_key, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -8901,7 +11545,7 @@ def get_structure_annotated_ms_data_experimental( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "AnnotatedMsMsData", + '200': "List[StructureCandidateFormula]", } response_data = self.api_client.call_api( *_param, @@ -8915,12 +11559,11 @@ def get_structure_annotated_ms_data_experimental( @validate_call - def get_structure_annotated_ms_data_experimental_with_http_info( + def get_structure_candidates_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - inchi_key: Annotated[StrictStr, Field(description="2d InChIKey of the structure candidate to be used to annotate the spectrum annotation")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -8933,19 +11576,17 @@ def get_structure_annotated_ms_data_experimental_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[AnnotatedMsMsData]: - """EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. + ) -> ApiResponse[List[StructureCandidateFormula]]: + """List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. - Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses for the given formula result identifier and structure candidate inChIKey. These annotations are only available if a fragmentation tree and the structure candidate are available. + List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str - :param inchi_key: 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation (required) - :type inchi_key: str + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[StructureCandidateOptField] :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 @@ -8968,11 +11609,10 @@ def get_structure_annotated_ms_data_experimental_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_structure_annotated_ms_data_experimental_serialize( + _param = self._get_structure_candidates_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - formula_id=formula_id, - inchi_key=inchi_key, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -8980,7 +11620,7 @@ def get_structure_annotated_ms_data_experimental_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "AnnotatedMsMsData", + '200': "List[StructureCandidateFormula]", } response_data = self.api_client.call_api( *_param, @@ -8994,12 +11634,11 @@ def get_structure_annotated_ms_data_experimental_with_http_info( @validate_call - def get_structure_annotated_ms_data_experimental_without_preload_content( + def get_structure_candidates_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - inchi_key: Annotated[StrictStr, Field(description="2d InChIKey of the structure candidate to be used to annotate the spectrum annotation")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -9013,18 +11652,16 @@ def get_structure_annotated_ms_data_experimental_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. + """List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. - Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses for the given formula result identifier and structure candidate inChIKey. These annotations are only available if a fragmentation tree and the structure candidate are available. + List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str - :param inchi_key: 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation (required) - :type inchi_key: str + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[StructureCandidateOptField] :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 @@ -9047,11 +11684,10 @@ def get_structure_annotated_ms_data_experimental_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_structure_annotated_ms_data_experimental_serialize( + _param = self._get_structure_candidates_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - formula_id=formula_id, - inchi_key=inchi_key, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -9059,7 +11695,7 @@ def get_structure_annotated_ms_data_experimental_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "AnnotatedMsMsData", + '200': "List[StructureCandidateFormula]", } response_data = self.api_client.call_api( *_param, @@ -9068,12 +11704,11 @@ def get_structure_annotated_ms_data_experimental_without_preload_content( return response_data.response - def _get_structure_annotated_ms_data_experimental_serialize( + def _get_structure_candidates_serialize( self, project_id, aligned_feature_id, - formula_id, - inchi_key, + opt_fields, _request_auth, _content_type, _headers, @@ -9083,6 +11718,7 @@ def _get_structure_annotated_ms_data_experimental_serialize( _host = None _collection_formats: Dict[str, str] = { + 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -9097,11 +11733,11 @@ def _get_structure_annotated_ms_data_experimental_serialize( _path_params['projectId'] = project_id if aligned_feature_id is not None: _path_params['alignedFeatureId'] = aligned_feature_id - if formula_id is not None: - _path_params['formulaId'] = formula_id - if inchi_key is not None: - _path_params['inchiKey'] = inchi_key # process the query parameters + if opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) + # process the header parameters # process the form parameters # process the body parameter @@ -9121,7 +11757,7 @@ def _get_structure_annotated_ms_data_experimental_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -9138,13 +11774,12 @@ def _get_structure_annotated_ms_data_experimental_serialize( @validate_call - def get_structure_annotated_spectrum_experimental( + def get_structure_candidates_by_formula( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - inchi_key: Annotated[StrictStr, Field(description="2d InChIKey of the structure candidate to be used to annotate the spectrum annotation")], - spectrum_index: Annotated[Optional[StrictInt], Field(description="index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)")] = None, + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -9157,10 +11792,10 @@ def get_structure_annotated_spectrum_experimental( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> AnnotatedSpectrum: - """EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. + ) -> List[StructureCandidateScored]: + """List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. - Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. + List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. :param project_id: project-space to read from. (required) :type project_id: str @@ -9168,10 +11803,8 @@ def get_structure_annotated_spectrum_experimental( :type aligned_feature_id: str :param formula_id: identifier of the requested formula result (required) :type formula_id: str - :param inchi_key: 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation (required) - :type inchi_key: str - :param spectrum_index: index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) - :type spectrum_index: int + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[StructureCandidateOptField] :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 @@ -9194,12 +11827,11 @@ def get_structure_annotated_spectrum_experimental( :return: Returns the result object. """ # noqa: E501 - _param = self._get_structure_annotated_spectrum_experimental_serialize( + _param = self._get_structure_candidates_by_formula_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, formula_id=formula_id, - inchi_key=inchi_key, - spectrum_index=spectrum_index, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -9207,7 +11839,7 @@ def get_structure_annotated_spectrum_experimental( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "AnnotatedSpectrum", + '200': "List[StructureCandidateScored]", } response_data = self.api_client.call_api( *_param, @@ -9221,13 +11853,12 @@ def get_structure_annotated_spectrum_experimental( @validate_call - def get_structure_annotated_spectrum_experimental_with_http_info( + def get_structure_candidates_by_formula_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - inchi_key: Annotated[StrictStr, Field(description="2d InChIKey of the structure candidate to be used to annotate the spectrum annotation")], - spectrum_index: Annotated[Optional[StrictInt], Field(description="index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)")] = None, + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -9240,10 +11871,10 @@ def get_structure_annotated_spectrum_experimental_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[AnnotatedSpectrum]: - """EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. + ) -> ApiResponse[List[StructureCandidateScored]]: + """List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. - Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. + List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. :param project_id: project-space to read from. (required) :type project_id: str @@ -9251,10 +11882,8 @@ def get_structure_annotated_spectrum_experimental_with_http_info( :type aligned_feature_id: str :param formula_id: identifier of the requested formula result (required) :type formula_id: str - :param inchi_key: 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation (required) - :type inchi_key: str - :param spectrum_index: index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) - :type spectrum_index: int + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[StructureCandidateOptField] :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 @@ -9277,12 +11906,11 @@ def get_structure_annotated_spectrum_experimental_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_structure_annotated_spectrum_experimental_serialize( + _param = self._get_structure_candidates_by_formula_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, formula_id=formula_id, - inchi_key=inchi_key, - spectrum_index=spectrum_index, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -9290,7 +11918,7 @@ def get_structure_annotated_spectrum_experimental_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "AnnotatedSpectrum", + '200': "List[StructureCandidateScored]", } response_data = self.api_client.call_api( *_param, @@ -9304,13 +11932,12 @@ def get_structure_annotated_spectrum_experimental_with_http_info( @validate_call - def get_structure_annotated_spectrum_experimental_without_preload_content( + def get_structure_candidates_by_formula_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - inchi_key: Annotated[StrictStr, Field(description="2d InChIKey of the structure candidate to be used to annotate the spectrum annotation")], - spectrum_index: Annotated[Optional[StrictInt], Field(description="index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)")] = None, + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -9324,9 +11951,9 @@ def get_structure_annotated_spectrum_experimental_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. + """List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. - Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. + List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. :param project_id: project-space to read from. (required) :type project_id: str @@ -9334,10 +11961,8 @@ def get_structure_annotated_spectrum_experimental_without_preload_content( :type aligned_feature_id: str :param formula_id: identifier of the requested formula result (required) :type formula_id: str - :param inchi_key: 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation (required) - :type inchi_key: str - :param spectrum_index: index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) - :type spectrum_index: int + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[StructureCandidateOptField] :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 @@ -9360,12 +11985,11 @@ def get_structure_annotated_spectrum_experimental_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_structure_annotated_spectrum_experimental_serialize( + _param = self._get_structure_candidates_by_formula_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, formula_id=formula_id, - inchi_key=inchi_key, - spectrum_index=spectrum_index, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -9373,7 +11997,7 @@ def get_structure_annotated_spectrum_experimental_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "AnnotatedSpectrum", + '200': "List[StructureCandidateScored]", } response_data = self.api_client.call_api( *_param, @@ -9382,13 +12006,12 @@ def get_structure_annotated_spectrum_experimental_without_preload_content( return response_data.response - def _get_structure_annotated_spectrum_experimental_serialize( + def _get_structure_candidates_by_formula_serialize( self, project_id, aligned_feature_id, formula_id, - inchi_key, - spectrum_index, + opt_fields, _request_auth, _content_type, _headers, @@ -9398,6 +12021,7 @@ def _get_structure_annotated_spectrum_experimental_serialize( _host = None _collection_formats: Dict[str, str] = { + 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -9414,12 +12038,10 @@ def _get_structure_annotated_spectrum_experimental_serialize( _path_params['alignedFeatureId'] = aligned_feature_id if formula_id is not None: _path_params['formulaId'] = formula_id - if inchi_key is not None: - _path_params['inchiKey'] = inchi_key # process the query parameters - if spectrum_index is not None: + if opt_fields is not None: - _query_params.append(('spectrumIndex', spectrum_index)) + _query_params.append(('optFields', opt_fields)) # process the header parameters # process the form parameters @@ -9440,7 +12062,7 @@ def _get_structure_annotated_spectrum_experimental_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -9457,11 +12079,15 @@ def _get_structure_annotated_spectrum_experimental_serialize( @validate_call - def get_structure_candidates( + def get_structure_candidates_by_formula_paged( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -9474,15 +12100,23 @@ def get_structure_candidates( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> List[StructureCandidateFormula]: - """List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. + ) -> PagedModelStructureCandidateScored: + """Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. - List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. + Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str + :param formula_id: identifier of the requested formula result (required) + :type formula_id: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. :type opt_fields: List[StructureCandidateOptField] :param _request_timeout: timeout setting for this request. If one @@ -9507,9 +12141,13 @@ def get_structure_candidates( :return: Returns the result object. """ # noqa: E501 - _param = self._get_structure_candidates_serialize( + _param = self._get_structure_candidates_by_formula_paged_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, + formula_id=formula_id, + page=page, + size=size, + sort=sort, opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, @@ -9518,7 +12156,7 @@ def get_structure_candidates( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[StructureCandidateFormula]", + '200': "PagedModelStructureCandidateScored", } response_data = self.api_client.call_api( *_param, @@ -9532,11 +12170,15 @@ def get_structure_candidates( @validate_call - def get_structure_candidates_with_http_info( + def get_structure_candidates_by_formula_paged_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -9549,15 +12191,23 @@ def get_structure_candidates_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[List[StructureCandidateFormula]]: - """List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. + ) -> ApiResponse[PagedModelStructureCandidateScored]: + """Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. - List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. + Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str + :param formula_id: identifier of the requested formula result (required) + :type formula_id: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. :type opt_fields: List[StructureCandidateOptField] :param _request_timeout: timeout setting for this request. If one @@ -9582,9 +12232,13 @@ def get_structure_candidates_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_structure_candidates_serialize( + _param = self._get_structure_candidates_by_formula_paged_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, + formula_id=formula_id, + page=page, + size=size, + sort=sort, opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, @@ -9593,7 +12247,7 @@ def get_structure_candidates_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[StructureCandidateFormula]", + '200': "PagedModelStructureCandidateScored", } response_data = self.api_client.call_api( *_param, @@ -9607,11 +12261,15 @@ def get_structure_candidates_with_http_info( @validate_call - def get_structure_candidates_without_preload_content( + def get_structure_candidates_by_formula_paged_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], + formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -9625,14 +12283,22 @@ def get_structure_candidates_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. + """Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. - List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. + Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) :type aligned_feature_id: str + :param formula_id: identifier of the requested formula result (required) + :type formula_id: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. :type opt_fields: List[StructureCandidateOptField] :param _request_timeout: timeout setting for this request. If one @@ -9657,9 +12323,13 @@ def get_structure_candidates_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_structure_candidates_serialize( + _param = self._get_structure_candidates_by_formula_paged_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, + formula_id=formula_id, + page=page, + size=size, + sort=sort, opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, @@ -9668,7 +12338,7 @@ def get_structure_candidates_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[StructureCandidateFormula]", + '200': "PagedModelStructureCandidateScored", } response_data = self.api_client.call_api( *_param, @@ -9677,10 +12347,14 @@ def get_structure_candidates_without_preload_content( return response_data.response - def _get_structure_candidates_serialize( + def _get_structure_candidates_by_formula_paged_serialize( self, project_id, aligned_feature_id, + formula_id, + page, + size, + sort, opt_fields, _request_auth, _content_type, @@ -9691,6 +12365,7 @@ def _get_structure_candidates_serialize( _host = None _collection_formats: Dict[str, str] = { + 'sort': 'multi', 'optFields': 'multi', } @@ -9706,7 +12381,21 @@ def _get_structure_candidates_serialize( _path_params['projectId'] = project_id if aligned_feature_id is not None: _path_params['alignedFeatureId'] = aligned_feature_id + if formula_id is not None: + _path_params['formulaId'] = formula_id # process the query parameters + if page is not None: + + _query_params.append(('page', page)) + + if size is not None: + + _query_params.append(('size', size)) + + if sort is not None: + + _query_params.append(('sort', sort)) + if opt_fields is not None: _query_params.append(('optFields', opt_fields)) @@ -9730,7 +12419,7 @@ def _get_structure_candidates_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures/page', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -9747,12 +12436,14 @@ def _get_structure_candidates_serialize( @validate_call - def get_structure_candidates_by_formula( + def get_structure_candidates_paged( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -9765,17 +12456,21 @@ def get_structure_candidates_by_formula( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> List[StructureCandidateScored]: - """List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. + ) -> PagedModelStructureCandidateFormula: + """Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. - List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. + Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. :type opt_fields: List[StructureCandidateOptField] :param _request_timeout: timeout setting for this request. If one @@ -9800,10 +12495,12 @@ def get_structure_candidates_by_formula( :return: Returns the result object. """ # noqa: E501 - _param = self._get_structure_candidates_by_formula_serialize( + _param = self._get_structure_candidates_paged_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - formula_id=formula_id, + page=page, + size=size, + sort=sort, opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, @@ -9812,7 +12509,7 @@ def get_structure_candidates_by_formula( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[StructureCandidateScored]", + '200': "PagedModelStructureCandidateFormula", } response_data = self.api_client.call_api( *_param, @@ -9826,12 +12523,14 @@ def get_structure_candidates_by_formula( @validate_call - def get_structure_candidates_by_formula_with_http_info( + def get_structure_candidates_paged_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -9844,17 +12543,21 @@ def get_structure_candidates_by_formula_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[List[StructureCandidateScored]]: - """List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. + ) -> ApiResponse[PagedModelStructureCandidateFormula]: + """Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. - List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. + Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. :type opt_fields: List[StructureCandidateOptField] :param _request_timeout: timeout setting for this request. If one @@ -9879,10 +12582,12 @@ def get_structure_candidates_by_formula_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_structure_candidates_by_formula_serialize( + _param = self._get_structure_candidates_paged_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - formula_id=formula_id, + page=page, + size=size, + sort=sort, opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, @@ -9891,7 +12596,7 @@ def get_structure_candidates_by_formula_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[StructureCandidateScored]", + '200': "PagedModelStructureCandidateFormula", } response_data = self.api_client.call_api( *_param, @@ -9905,12 +12610,14 @@ def get_structure_candidates_by_formula_with_http_info( @validate_call - def get_structure_candidates_by_formula_without_preload_content( + def get_structure_candidates_paged_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[StructureCandidateOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -9924,16 +12631,20 @@ def get_structure_candidates_by_formula_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. + """Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. - List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. + Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) + :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. :type opt_fields: List[StructureCandidateOptField] :param _request_timeout: timeout setting for this request. If one @@ -9958,10 +12669,12 @@ def get_structure_candidates_by_formula_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_structure_candidates_by_formula_serialize( + _param = self._get_structure_candidates_paged_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - formula_id=formula_id, + page=page, + size=size, + sort=sort, opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, @@ -9970,7 +12683,7 @@ def get_structure_candidates_by_formula_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "List[StructureCandidateScored]", + '200': "PagedModelStructureCandidateFormula", } response_data = self.api_client.call_api( *_param, @@ -9979,11 +12692,13 @@ def get_structure_candidates_by_formula_without_preload_content( return response_data.response - def _get_structure_candidates_by_formula_serialize( + def _get_structure_candidates_paged_serialize( self, project_id, aligned_feature_id, - formula_id, + page, + size, + sort, opt_fields, _request_auth, _content_type, @@ -9994,6 +12709,7 @@ def _get_structure_candidates_by_formula_serialize( _host = None _collection_formats: Dict[str, str] = { + 'sort': 'multi', 'optFields': 'multi', } @@ -10009,9 +12725,19 @@ def _get_structure_candidates_by_formula_serialize( _path_params['projectId'] = project_id if aligned_feature_id is not None: _path_params['alignedFeatureId'] = aligned_feature_id - if formula_id is not None: - _path_params['formulaId'] = formula_id # process the query parameters + if page is not None: + + _query_params.append(('page', page)) + + if size is not None: + + _query_params.append(('size', size)) + + if sort is not None: + + _query_params.append(('sort', sort)) + if opt_fields is not None: _query_params.append(('optFields', opt_fields)) @@ -10035,7 +12761,7 @@ def _get_structure_candidates_by_formula_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures/page', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -10052,15 +12778,10 @@ def _get_structure_candidates_by_formula_serialize( @validate_call - def get_structure_candidates_by_formula_paged( + def get_tags_for_aligned_features_experimental( self, - project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + project_id: Annotated[StrictStr, Field(description="project-space to get from.")], + object_id: Annotated[StrictStr, Field(description="object to get tags for.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -10073,25 +12794,15 @@ def get_structure_candidates_by_formula_paged( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> PagedModelStructureCandidateScored: - """Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. + ) -> List[Tag]: + """[EXPERIMENTAL] Get all tags associated with this Object - Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. + [EXPERIMENTAL] Get all tags associated with this Object - :param project_id: project-space to read from. (required) + :param project_id: project-space to get from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) - :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[StructureCandidateOptField] + :param object_id: object to get tags for. (required) + :type object_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 @@ -10114,14 +12825,9 @@ def get_structure_candidates_by_formula_paged( :return: Returns the result object. """ # noqa: E501 - _param = self._get_structure_candidates_by_formula_paged_serialize( + _param = self._get_tags_for_aligned_features_experimental_serialize( project_id=project_id, - aligned_feature_id=aligned_feature_id, - formula_id=formula_id, - page=page, - size=size, - sort=sort, - opt_fields=opt_fields, + object_id=object_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -10129,7 +12835,7 @@ def get_structure_candidates_by_formula_paged( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelStructureCandidateScored", + '200': "List[Tag]", } response_data = self.api_client.call_api( *_param, @@ -10143,15 +12849,10 @@ def get_structure_candidates_by_formula_paged( @validate_call - def get_structure_candidates_by_formula_paged_with_http_info( + def get_tags_for_aligned_features_experimental_with_http_info( self, - project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + project_id: Annotated[StrictStr, Field(description="project-space to get from.")], + object_id: Annotated[StrictStr, Field(description="object to get tags for.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -10164,25 +12865,15 @@ def get_structure_candidates_by_formula_paged_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[PagedModelStructureCandidateScored]: - """Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. - - Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. - - :param project_id: project-space to read from. (required) - :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) - :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[StructureCandidateOptField] + ) -> ApiResponse[List[Tag]]: + """[EXPERIMENTAL] Get all tags associated with this Object + + [EXPERIMENTAL] Get all tags associated with this Object + + :param project_id: project-space to get from. (required) + :type project_id: str + :param object_id: object to get tags for. (required) + :type object_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 @@ -10205,14 +12896,9 @@ def get_structure_candidates_by_formula_paged_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_structure_candidates_by_formula_paged_serialize( + _param = self._get_tags_for_aligned_features_experimental_serialize( project_id=project_id, - aligned_feature_id=aligned_feature_id, - formula_id=formula_id, - page=page, - size=size, - sort=sort, - opt_fields=opt_fields, + object_id=object_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -10220,7 +12906,7 @@ def get_structure_candidates_by_formula_paged_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelStructureCandidateScored", + '200': "List[Tag]", } response_data = self.api_client.call_api( *_param, @@ -10234,15 +12920,10 @@ def get_structure_candidates_by_formula_paged_with_http_info( @validate_call - def get_structure_candidates_by_formula_paged_without_preload_content( + def get_tags_for_aligned_features_experimental_without_preload_content( self, - project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the formula result belongs to.")], - formula_id: Annotated[StrictStr, Field(description="identifier of the requested formula result")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + project_id: Annotated[StrictStr, Field(description="project-space to get from.")], + object_id: Annotated[StrictStr, Field(description="object to get tags for.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -10256,24 +12937,14 @@ def get_structure_candidates_by_formula_paged_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. + """[EXPERIMENTAL] Get all tags associated with this Object - Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. + [EXPERIMENTAL] Get all tags associated with this Object - :param project_id: project-space to read from. (required) + :param project_id: project-space to get from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the formula result belongs to. (required) - :type aligned_feature_id: str - :param formula_id: identifier of the requested formula result (required) - :type formula_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[StructureCandidateOptField] + :param object_id: object to get tags for. (required) + :type object_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 @@ -10296,14 +12967,9 @@ def get_structure_candidates_by_formula_paged_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_structure_candidates_by_formula_paged_serialize( + _param = self._get_tags_for_aligned_features_experimental_serialize( project_id=project_id, - aligned_feature_id=aligned_feature_id, - formula_id=formula_id, - page=page, - size=size, - sort=sort, - opt_fields=opt_fields, + object_id=object_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -10311,7 +12977,7 @@ def get_structure_candidates_by_formula_paged_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelStructureCandidateScored", + '200': "List[Tag]", } response_data = self.api_client.call_api( *_param, @@ -10320,15 +12986,10 @@ def get_structure_candidates_by_formula_paged_without_preload_content( return response_data.response - def _get_structure_candidates_by_formula_paged_serialize( + def _get_tags_for_aligned_features_experimental_serialize( self, project_id, - aligned_feature_id, - formula_id, - page, - size, - sort, - opt_fields, + object_id, _request_auth, _content_type, _headers, @@ -10338,8 +12999,6 @@ def _get_structure_candidates_by_formula_paged_serialize( _host = None _collection_formats: Dict[str, str] = { - 'sort': 'multi', - 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -10352,27 +13011,9 @@ def _get_structure_candidates_by_formula_paged_serialize( # process the path parameters if project_id is not None: _path_params['projectId'] = project_id - if aligned_feature_id is not None: - _path_params['alignedFeatureId'] = aligned_feature_id - if formula_id is not None: - _path_params['formulaId'] = formula_id + if object_id is not None: + _path_params['objectId'] = object_id # process the query parameters - if page is not None: - - _query_params.append(('page', page)) - - if size is not None: - - _query_params.append(('size', size)) - - if sort is not None: - - _query_params.append(('sort', sort)) - - if opt_fields is not None: - - _query_params.append(('optFields', opt_fields)) - # process the header parameters # process the form parameters # process the body parameter @@ -10392,7 +13033,7 @@ def _get_structure_candidates_by_formula_paged_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures/page', + resource_path='/api/projects/{projectId}/aligned-features/tags/{objectId}', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -10409,14 +13050,11 @@ def _get_structure_candidates_by_formula_paged_serialize( @validate_call - def get_structure_candidates_paged( + def get_traces_experimental( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature which intensities should be read out")], + include_all: Annotated[Optional[StrictBool], Field(description="when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -10429,23 +13067,17 @@ def get_structure_candidates_paged( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> PagedModelStructureCandidateFormula: - """Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. + ) -> TraceSetExperimental: + """[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId) - Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. + [EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId).
Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis, but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data. However, this also means that all traces can be directly compared against each other, as they all lie in the same retention time axis. By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set, it also includes samples in which the same trace appears in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :param aligned_feature_id: feature which intensities should be read out (required) :type aligned_feature_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[StructureCandidateOptField] + :param include_all: when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature. + :type include_all: 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 @@ -10468,13 +13100,10 @@ def get_structure_candidates_paged( :return: Returns the result object. """ # noqa: E501 - _param = self._get_structure_candidates_paged_serialize( + _param = self._get_traces_experimental_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - page=page, - size=size, - sort=sort, - opt_fields=opt_fields, + include_all=include_all, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -10482,7 +13111,7 @@ def get_structure_candidates_paged( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelStructureCandidateFormula", + '200': "TraceSetExperimental", } response_data = self.api_client.call_api( *_param, @@ -10496,14 +13125,11 @@ def get_structure_candidates_paged( @validate_call - def get_structure_candidates_paged_with_http_info( + def get_traces_experimental_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature which intensities should be read out")], + include_all: Annotated[Optional[StrictBool], Field(description="when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -10516,23 +13142,17 @@ def get_structure_candidates_paged_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[PagedModelStructureCandidateFormula]: - """Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. + ) -> ApiResponse[TraceSetExperimental]: + """[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId) - Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. + [EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId).
Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis, but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data. However, this also means that all traces can be directly compared against each other, as they all lie in the same retention time axis. By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set, it also includes samples in which the same trace appears in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :param aligned_feature_id: feature which intensities should be read out (required) :type aligned_feature_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[StructureCandidateOptField] + :param include_all: when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature. + :type include_all: 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 @@ -10555,13 +13175,10 @@ def get_structure_candidates_paged_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_structure_candidates_paged_serialize( + _param = self._get_traces_experimental_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - page=page, - size=size, - sort=sort, - opt_fields=opt_fields, + include_all=include_all, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -10569,7 +13186,7 @@ def get_structure_candidates_paged_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelStructureCandidateFormula", + '200': "TraceSetExperimental", } response_data = self.api_client.call_api( *_param, @@ -10583,14 +13200,11 @@ def get_structure_candidates_paged_with_http_info( @validate_call - def get_structure_candidates_paged_without_preload_content( + def get_traces_experimental_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) the structure candidates belong to.")], - page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, - size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, - sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[StructureCandidateOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + aligned_feature_id: Annotated[StrictStr, Field(description="feature which intensities should be read out")], + include_all: Annotated[Optional[StrictBool], Field(description="when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -10604,22 +13218,16 @@ def get_structure_candidates_paged_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. + """[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId) - Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint, structure database links. + [EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId).
Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis, but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data. However, this also means that all traces can be directly compared against each other, as they all lie in the same retention time axis. By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set, it also includes samples in which the same trace appears in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. :param project_id: project-space to read from. (required) :type project_id: str - :param aligned_feature_id: feature (aligned over runs) the structure candidates belong to. (required) + :param aligned_feature_id: feature which intensities should be read out (required) :type aligned_feature_id: str - :param page: Zero-based page index (0..N) - :type page: int - :param size: The size of the page to be returned - :type size: int - :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - :type sort: List[str] - :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[StructureCandidateOptField] + :param include_all: when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature. + :type include_all: 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 @@ -10642,13 +13250,10 @@ def get_structure_candidates_paged_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_structure_candidates_paged_serialize( + _param = self._get_traces_experimental_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - page=page, - size=size, - sort=sort, - opt_fields=opt_fields, + include_all=include_all, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -10656,7 +13261,7 @@ def get_structure_candidates_paged_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "PagedModelStructureCandidateFormula", + '200': "TraceSetExperimental", } response_data = self.api_client.call_api( *_param, @@ -10665,14 +13270,11 @@ def get_structure_candidates_paged_without_preload_content( return response_data.response - def _get_structure_candidates_paged_serialize( + def _get_traces_experimental_serialize( self, project_id, aligned_feature_id, - page, - size, - sort, - opt_fields, + include_all, _request_auth, _content_type, _headers, @@ -10682,8 +13284,6 @@ def _get_structure_candidates_paged_serialize( _host = None _collection_formats: Dict[str, str] = { - 'sort': 'multi', - 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -10699,21 +13299,9 @@ def _get_structure_candidates_paged_serialize( if aligned_feature_id is not None: _path_params['alignedFeatureId'] = aligned_feature_id # process the query parameters - if page is not None: - - _query_params.append(('page', page)) - - if size is not None: - - _query_params.append(('size', size)) - - if sort is not None: - - _query_params.append(('sort', sort)) - - if opt_fields is not None: + if include_all is not None: - _query_params.append(('optFields', opt_fields)) + _query_params.append(('includeAll', include_all)) # process the header parameters # process the form parameters @@ -10734,7 +13322,7 @@ def _get_structure_candidates_paged_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures/page', + resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -10751,11 +13339,11 @@ def _get_structure_candidates_paged_serialize( @validate_call - def get_traces_experimental( + def remove_tag_from_aligned_feature_experimental( self, - project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature which intensities should be read out")], - include_all: Annotated[Optional[StrictBool], Field(description="when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature.")] = None, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) to delete tag from.")], + tag_name: Annotated[StrictStr, Field(description="name of the tag to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -10768,17 +13356,17 @@ def get_traces_experimental( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> TraceSetExperimental: - """EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + ) -> None: + """[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space - Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis, but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data. However, this also means that all traces can be directly compared against each other, as they all lie in the same retention time axis. By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set, it also includes samples in which the same trace appears in. + [EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. - :param project_id: project-space to read from. (required) + :param project_id: project-space to delete from. (required) :type project_id: str - :param aligned_feature_id: feature which intensities should be read out (required) + :param aligned_feature_id: feature (aligned over runs) to delete tag from. (required) :type aligned_feature_id: str - :param include_all: when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature. - :type include_all: bool + :param tag_name: name of the tag to delete. (required) + :type tag_name: 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 @@ -10801,10 +13389,10 @@ def get_traces_experimental( :return: Returns the result object. """ # noqa: E501 - _param = self._get_traces_experimental_serialize( + _param = self._remove_tag_from_aligned_feature_experimental_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - include_all=include_all, + tag_name=tag_name, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -10812,7 +13400,7 @@ def get_traces_experimental( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "TraceSetExperimental", + '200': None, } response_data = self.api_client.call_api( *_param, @@ -10826,11 +13414,11 @@ def get_traces_experimental( @validate_call - def get_traces_experimental_with_http_info( + def remove_tag_from_aligned_feature_experimental_with_http_info( self, - project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature which intensities should be read out")], - include_all: Annotated[Optional[StrictBool], Field(description="when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature.")] = None, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) to delete tag from.")], + tag_name: Annotated[StrictStr, Field(description="name of the tag to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -10843,17 +13431,17 @@ def get_traces_experimental_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[TraceSetExperimental]: - """EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + ) -> ApiResponse[None]: + """[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space - Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis, but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data. However, this also means that all traces can be directly compared against each other, as they all lie in the same retention time axis. By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set, it also includes samples in which the same trace appears in. + [EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. - :param project_id: project-space to read from. (required) + :param project_id: project-space to delete from. (required) :type project_id: str - :param aligned_feature_id: feature which intensities should be read out (required) + :param aligned_feature_id: feature (aligned over runs) to delete tag from. (required) :type aligned_feature_id: str - :param include_all: when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature. - :type include_all: bool + :param tag_name: name of the tag to delete. (required) + :type tag_name: 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 @@ -10876,10 +13464,10 @@ def get_traces_experimental_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_traces_experimental_serialize( + _param = self._remove_tag_from_aligned_feature_experimental_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - include_all=include_all, + tag_name=tag_name, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -10887,7 +13475,7 @@ def get_traces_experimental_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "TraceSetExperimental", + '200': None, } response_data = self.api_client.call_api( *_param, @@ -10901,11 +13489,11 @@ def get_traces_experimental_with_http_info( @validate_call - def get_traces_experimental_without_preload_content( + def remove_tag_from_aligned_feature_experimental_without_preload_content( self, - project_id: Annotated[StrictStr, Field(description="project-space to read from.")], - aligned_feature_id: Annotated[StrictStr, Field(description="feature which intensities should be read out")], - include_all: Annotated[Optional[StrictBool], Field(description="when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature.")] = None, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + aligned_feature_id: Annotated[StrictStr, Field(description="feature (aligned over runs) to delete tag from.")], + tag_name: Annotated[StrictStr, Field(description="name of the tag to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -10919,16 +13507,16 @@ def get_traces_experimental_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + """[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space - Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis, but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data. However, this also means that all traces can be directly compared against each other, as they all lie in the same retention time axis. By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set, it also includes samples in which the same trace appears in. + [EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. - :param project_id: project-space to read from. (required) + :param project_id: project-space to delete from. (required) :type project_id: str - :param aligned_feature_id: feature which intensities should be read out (required) + :param aligned_feature_id: feature (aligned over runs) to delete tag from. (required) :type aligned_feature_id: str - :param include_all: when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature. - :type include_all: bool + :param tag_name: name of the tag to delete. (required) + :type tag_name: 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 @@ -10951,10 +13539,10 @@ def get_traces_experimental_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_traces_experimental_serialize( + _param = self._remove_tag_from_aligned_feature_experimental_serialize( project_id=project_id, aligned_feature_id=aligned_feature_id, - include_all=include_all, + tag_name=tag_name, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -10962,7 +13550,7 @@ def get_traces_experimental_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "TraceSetExperimental", + '200': None, } response_data = self.api_client.call_api( *_param, @@ -10971,11 +13559,11 @@ def get_traces_experimental_without_preload_content( return response_data.response - def _get_traces_experimental_serialize( + def _remove_tag_from_aligned_feature_experimental_serialize( self, project_id, aligned_feature_id, - include_all, + tag_name, _request_auth, _content_type, _headers, @@ -10999,22 +13587,14 @@ def _get_traces_experimental_serialize( _path_params['projectId'] = project_id if aligned_feature_id is not None: _path_params['alignedFeatureId'] = aligned_feature_id + if tag_name is not None: + _path_params['tagName'] = tag_name # process the query parameters - if include_all is not None: - - _query_params.append(('includeAll', include_all)) - # process the header parameters # process the form parameters # process the body parameter - # set the HTTP header `Accept` - _header_params['Accept'] = self.api_client.select_header_accept( - [ - 'application/json' - ] - ) # authentication setting @@ -11022,8 +13602,8 @@ def _get_traces_experimental_serialize( ] return self.api_client.param_serialize( - method='GET', - resource_path='/api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces', + method='DELETE', + resource_path='/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}/{tagName}', path_params=_path_params, query_params=_query_params, header_params=_header_params, diff --git a/client-api_python/generated/PySirius/api/gui_api.py b/client-api_python/generated/PySirius/api/gui_api.py deleted file mode 100644 index 17d0b3b0..00000000 --- a/client-api_python/generated/PySirius/api/gui_api.py +++ /dev/null @@ -1,804 +0,0 @@ -# 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, str] = {} - _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` - _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, str] = {} - _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` - _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, str] = {} - _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/api/jobs_api.py b/client-api_python/generated/PySirius/api/jobs_api.py index a859ad04..b0379e8e 100644 --- a/client-api_python/generated/PySirius/api/jobs_api.py +++ b/client-api_python/generated/PySirius/api/jobs_api.py @@ -877,12 +877,282 @@ def _delete_jobs_serialize( + @validate_call + def get_command( + self, + job_submission: JobSubmission, + _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[str]: + """Get a CLI command for the given job configuration. + + Get a CLI command for the given job configuration. + + :param job_submission: (required) + :type job_submission: JobSubmission + :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_command_serialize( + job_submission=job_submission, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[str]", + } + 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_command_with_http_info( + self, + job_submission: JobSubmission, + _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[str]]: + """Get a CLI command for the given job configuration. + + Get a CLI command for the given job configuration. + + :param job_submission: (required) + :type job_submission: JobSubmission + :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_command_serialize( + job_submission=job_submission, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[str]", + } + 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_command_without_preload_content( + self, + job_submission: JobSubmission, + _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 a CLI command for the given job configuration. + + Get a CLI command for the given job configuration. + + :param job_submission: (required) + :type job_submission: JobSubmission + :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_command_serialize( + job_submission=job_submission, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[str]", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_command_serialize( + self, + job_submission, + _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, str] = {} + _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 + if job_submission is not None: + _body_params = job_submission + + + # set the HTTP header `Accept` + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + # set the HTTP header `Content-Type` + if _content_type: + _header_params['Content-Type'] = _content_type + else: + _default_content_type = ( + self.api_client.select_header_content_type( + [ + 'application/json' + ] + ) + ) + if _default_content_type is not None: + _header_params['Content-Type'] = _default_content_type + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='POST', + resource_path='/api/job-configs/get-command', + 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_default_job_config( self, include_config_map: Annotated[Optional[StrictBool], Field(description="if true, generic configmap with-defaults will be included")] = None, move_parameters_to_config_map: Annotated[Optional[StrictBool], Field(description="if true, object-based parameters will be converted to and added to the generic configMap parameters")] = None, - include_custom_dbs_for_structure_search: Annotated[Optional[StrictBool], Field(description="if true, default database selection of structure db search contains also all available custom DB.")] = None, + include_custom_dbs_for_structure_search: Annotated[Optional[StrictBool], Field(description="if true, default database selection of structure db search spectral library search contains also all available custom DB. If No custom dbs are selected, spectral library search is disabled by default.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -904,7 +1174,7 @@ def get_default_job_config( :type include_config_map: bool :param move_parameters_to_config_map: if true, object-based parameters will be converted to and added to the generic configMap parameters :type move_parameters_to_config_map: bool - :param include_custom_dbs_for_structure_search: if true, default database selection of structure db search contains also all available custom DB. + :param include_custom_dbs_for_structure_search: if true, default database selection of structure db search spectral library search contains also all available custom DB. If No custom dbs are selected, spectral library search is disabled by default. :type include_custom_dbs_for_structure_search: bool :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -957,7 +1227,7 @@ def get_default_job_config_with_http_info( self, include_config_map: Annotated[Optional[StrictBool], Field(description="if true, generic configmap with-defaults will be included")] = None, move_parameters_to_config_map: Annotated[Optional[StrictBool], Field(description="if true, object-based parameters will be converted to and added to the generic configMap parameters")] = None, - include_custom_dbs_for_structure_search: Annotated[Optional[StrictBool], Field(description="if true, default database selection of structure db search contains also all available custom DB.")] = None, + include_custom_dbs_for_structure_search: Annotated[Optional[StrictBool], Field(description="if true, default database selection of structure db search spectral library search contains also all available custom DB. If No custom dbs are selected, spectral library search is disabled by default.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -979,7 +1249,7 @@ def get_default_job_config_with_http_info( :type include_config_map: bool :param move_parameters_to_config_map: if true, object-based parameters will be converted to and added to the generic configMap parameters :type move_parameters_to_config_map: bool - :param include_custom_dbs_for_structure_search: if true, default database selection of structure db search contains also all available custom DB. + :param include_custom_dbs_for_structure_search: if true, default database selection of structure db search spectral library search contains also all available custom DB. If No custom dbs are selected, spectral library search is disabled by default. :type include_custom_dbs_for_structure_search: bool :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1032,7 +1302,7 @@ def get_default_job_config_without_preload_content( self, include_config_map: Annotated[Optional[StrictBool], Field(description="if true, generic configmap with-defaults will be included")] = None, move_parameters_to_config_map: Annotated[Optional[StrictBool], Field(description="if true, object-based parameters will be converted to and added to the generic configMap parameters")] = None, - include_custom_dbs_for_structure_search: Annotated[Optional[StrictBool], Field(description="if true, default database selection of structure db search contains also all available custom DB.")] = None, + include_custom_dbs_for_structure_search: Annotated[Optional[StrictBool], Field(description="if true, default database selection of structure db search spectral library search contains also all available custom DB. If No custom dbs are selected, spectral library search is disabled by default.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1054,7 +1324,7 @@ def get_default_job_config_without_preload_content( :type include_config_map: bool :param move_parameters_to_config_map: if true, object-based parameters will be converted to and added to the generic configMap parameters :type move_parameters_to_config_map: bool - :param include_custom_dbs_for_structure_search: if true, default database selection of structure db search contains also all available custom DB. + :param include_custom_dbs_for_structure_search: if true, default database selection of structure db search spectral library search contains also all available custom DB. If No custom dbs are selected, spectral library search is disabled by default. :type include_custom_dbs_for_structure_search: bool :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1175,7 +1445,7 @@ def get_job( self, project_id: Annotated[StrictStr, Field(description="project-space to run jobs on")], job_id: Annotated[StrictStr, Field(description="of the job to be returned")], - opt_fields: Annotated[Optional[List[Optional[JobOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1250,7 +1520,7 @@ def get_job_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to run jobs on")], job_id: Annotated[StrictStr, Field(description="of the job to be returned")], - opt_fields: Annotated[Optional[List[Optional[JobOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1325,7 +1595,7 @@ def get_job_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to run jobs on")], job_id: Annotated[StrictStr, Field(description="of the job to be returned")], - opt_fields: Annotated[Optional[List[Optional[JobOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1750,9 +2020,9 @@ def get_job_config_names( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> List[str]: - """(Deprecated) DEPRECATED: use /job-configs to get all configs with names. + """(Deprecated) [DEPRECATED] Get all (non-default) job configuration names - Get all (non-default) job configuration names + [DEPRECATED] Get all (non-default) job configuration names
[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. :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1814,9 +2084,9 @@ def get_job_config_names_with_http_info( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> ApiResponse[List[str]]: - """(Deprecated) DEPRECATED: use /job-configs to get all configs with names. + """(Deprecated) [DEPRECATED] Get all (non-default) job configuration names - Get all (non-default) job configuration names + [DEPRECATED] Get all (non-default) job configuration names
[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. :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1878,9 +2148,9 @@ def get_job_config_names_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """(Deprecated) DEPRECATED: use /job-configs to get all configs with names. + """(Deprecated) [DEPRECATED] Get all (non-default) job configuration names - Get all (non-default) job configuration names + [DEPRECATED] Get all (non-default) job configuration names
[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. :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -2225,7 +2495,7 @@ def _get_job_configs_serialize( def get_jobs( self, project_id: Annotated[StrictStr, Field(description="project-space to run jobs on")], - opt_fields: Annotated[Optional[List[Optional[JobOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2296,7 +2566,7 @@ def get_jobs( def get_jobs_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to run jobs on")], - opt_fields: Annotated[Optional[List[Optional[JobOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2367,7 +2637,7 @@ def get_jobs_with_http_info( def get_jobs_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to run jobs on")], - opt_fields: Annotated[Optional[List[Optional[JobOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2503,7 +2773,7 @@ def get_jobs_paged( page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[JobOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2586,7 +2856,7 @@ def get_jobs_paged_with_http_info( page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[JobOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2669,7 +2939,7 @@ def get_jobs_paged_without_preload_content( page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, - opt_fields: Annotated[Optional[List[Optional[JobOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -3418,7 +3688,7 @@ def start_job( self, project_id: Annotated[StrictStr, Field(description="project-space to run jobs on")], job_submission: Annotated[JobSubmission, Field(description="configuration of the job that will be submitted of the job to be returned")], - opt_fields: Annotated[Optional[List[Optional[JobOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -3493,7 +3763,7 @@ def start_job_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to run jobs on")], job_submission: Annotated[JobSubmission, Field(description="configuration of the job that will be submitted of the job to be returned")], - opt_fields: Annotated[Optional[List[Optional[JobOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -3568,7 +3838,7 @@ def start_job_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to run jobs on")], job_submission: Annotated[JobSubmission, Field(description="configuration of the job that will be submitted of the job to be returned")], - opt_fields: Annotated[Optional[List[Optional[JobOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -3723,7 +3993,7 @@ def start_job_from_config( job_config_name: Annotated[StrictStr, Field(description="name if the config to be used")], request_body: Annotated[List[StrictStr], Field(description="List of alignedFeatureIds to be computed")], recompute: Annotated[Optional[StrictBool], Field(description="enable or disable recompute. If null the stored value will be used.")] = None, - opt_fields: Annotated[Optional[List[Optional[JobOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -3806,7 +4076,7 @@ def start_job_from_config_with_http_info( job_config_name: Annotated[StrictStr, Field(description="name if the config to be used")], request_body: Annotated[List[StrictStr], Field(description="List of alignedFeatureIds to be computed")], recompute: Annotated[Optional[StrictBool], Field(description="enable or disable recompute. If null the stored value will be used.")] = None, - opt_fields: Annotated[Optional[List[Optional[JobOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -3889,7 +4159,7 @@ def start_job_from_config_without_preload_content( job_config_name: Annotated[StrictStr, Field(description="name if the config to be used")], request_body: Annotated[List[StrictStr], Field(description="List of alignedFeatureIds to be computed")], recompute: Annotated[Optional[StrictBool], Field(description="enable or disable recompute. If null the stored value will be used.")] = None, - opt_fields: Annotated[Optional[List[Optional[JobOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], diff --git a/client-api_python/generated/PySirius/api/projects_api.py b/client-api_python/generated/PySirius/api/projects_api.py index 2fcf6e3a..1ee308cb 100644 --- a/client-api_python/generated/PySirius/api/projects_api.py +++ b/client-api_python/generated/PySirius/api/projects_api.py @@ -46,6 +46,7 @@ def __init__(self, api_client=None) -> None: def close_project( self, project_id: Annotated[StrictStr, Field(description="unique name/identifier of the project-space to be closed.")], + compact: Annotated[Optional[StrictBool], Field(description="if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -59,12 +60,14 @@ def close_project( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> None: - """Close project-space and remove it from application + """Close project-space and remove it from the application - Close project-space and remove it from application. Project will NOT be deleted from disk.
ATTENTION: This will cancel and remove all jobs running on this Project before closing it. If there are many jobs, this might take some time. + Close project-space and remove it from the application. The Project will NOT be deleted from disk.
ATTENTION: This will cancel and remove all jobs running on this Project before closing it. If there are many jobs, this might take some time. :param project_id: unique name/identifier of the project-space to be closed. (required) :type project_id: str + :param compact: if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version. + :type compact: 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 @@ -89,6 +92,7 @@ def close_project( _param = self._close_project_serialize( project_id=project_id, + compact=compact, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -113,6 +117,7 @@ def close_project( def close_project_with_http_info( self, project_id: Annotated[StrictStr, Field(description="unique name/identifier of the project-space to be closed.")], + compact: Annotated[Optional[StrictBool], Field(description="if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -126,12 +131,14 @@ def close_project_with_http_info( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> ApiResponse[None]: - """Close project-space and remove it from application + """Close project-space and remove it from the application - Close project-space and remove it from application. Project will NOT be deleted from disk.
ATTENTION: This will cancel and remove all jobs running on this Project before closing it. If there are many jobs, this might take some time. + Close project-space and remove it from the application. The Project will NOT be deleted from disk.
ATTENTION: This will cancel and remove all jobs running on this Project before closing it. If there are many jobs, this might take some time. :param project_id: unique name/identifier of the project-space to be closed. (required) :type project_id: str + :param compact: if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version. + :type compact: 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 @@ -156,6 +163,7 @@ def close_project_with_http_info( _param = self._close_project_serialize( project_id=project_id, + compact=compact, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -180,6 +188,7 @@ def close_project_with_http_info( def close_project_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="unique name/identifier of the project-space to be closed.")], + compact: Annotated[Optional[StrictBool], Field(description="if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -193,12 +202,14 @@ def close_project_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Close project-space and remove it from application + """Close project-space and remove it from the application - Close project-space and remove it from application. Project will NOT be deleted from disk.
ATTENTION: This will cancel and remove all jobs running on this Project before closing it. If there are many jobs, this might take some time. + Close project-space and remove it from the application. The Project will NOT be deleted from disk.
ATTENTION: This will cancel and remove all jobs running on this Project before closing it. If there are many jobs, this might take some time. :param project_id: unique name/identifier of the project-space to be closed. (required) :type project_id: str + :param compact: if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version. + :type compact: 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 @@ -223,6 +234,7 @@ def close_project_without_preload_content( _param = self._close_project_serialize( project_id=project_id, + compact=compact, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -242,6 +254,7 @@ def close_project_without_preload_content( def _close_project_serialize( self, project_id, + compact, _request_auth, _content_type, _headers, @@ -264,6 +277,10 @@ def _close_project_serialize( if project_id is not None: _path_params['projectId'] = project_id # process the query parameters + if compact is not None: + + _query_params.append(('compact', compact)) + # process the header parameters # process the form parameters # process the body parameter @@ -298,7 +315,7 @@ def create_project( self, project_id: Annotated[StrictStr, Field(description="unique name/identifier that shall be used to access the newly created project-space. Must consist only of [a-zA-Z0-9_-].")], path_to_project: Annotated[Optional[StrictStr], Field(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.")] = None, - opt_fields: Optional[List[Optional[ProjectInfoOptField]]] = None, + opt_fields: Optional[List[ProjectInfoOptField]] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -373,7 +390,7 @@ def create_project_with_http_info( self, project_id: Annotated[StrictStr, Field(description="unique name/identifier that shall be used to access the newly created project-space. Must consist only of [a-zA-Z0-9_-].")], path_to_project: Annotated[Optional[StrictStr], Field(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.")] = None, - opt_fields: Optional[List[Optional[ProjectInfoOptField]]] = None, + opt_fields: Optional[List[ProjectInfoOptField]] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -448,7 +465,7 @@ def create_project_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="unique name/identifier that shall be used to access the newly created project-space. Must consist only of [a-zA-Z0-9_-].")], path_to_project: Annotated[Optional[StrictStr], Field(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.")] = None, - opt_fields: Optional[List[Optional[ProjectInfoOptField]]] = None, + opt_fields: Optional[List[ProjectInfoOptField]] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1405,7 +1422,7 @@ def _get_finger_id_data_serialize( def get_project( self, project_id: Annotated[StrictStr, Field(description="unique name/identifier tof the project-space to be accessed.")], - opt_fields: Optional[List[Optional[ProjectInfoOptField]]] = None, + opt_fields: Optional[List[ProjectInfoOptField]] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1476,7 +1493,7 @@ def get_project( def get_project_with_http_info( self, project_id: Annotated[StrictStr, Field(description="unique name/identifier tof the project-space to be accessed.")], - opt_fields: Optional[List[Optional[ProjectInfoOptField]]] = None, + opt_fields: Optional[List[ProjectInfoOptField]] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1547,7 +1564,7 @@ def get_project_with_http_info( def get_project_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="unique name/identifier tof the project-space to be accessed.")], - opt_fields: Optional[List[Optional[ProjectInfoOptField]]] = None, + opt_fields: Optional[List[ProjectInfoOptField]] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1922,8 +1939,8 @@ def _get_projects_serialize( def import_ms_run_data( self, project_id: Annotated[StrictStr, Field(description="Project-space to import into.")], - input_files: Optional[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]]] = None, - parameters: Optional[LcmsSubmissionParameters] = None, + input_files: Annotated[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]], Field(description="Files to import into project.")], + parameters: Annotated[LcmsSubmissionParameters, Field(description="Parameters for feature alignment and feature finding.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1943,9 +1960,9 @@ def import_ms_run_data( :param project_id: Project-space to import into. (required) :type project_id: str - :param input_files: + :param input_files: Files to import into project. (required) :type input_files: List[bytearray] - :param parameters: + :param parameters: Parameters for feature alignment and feature finding. (required) :type parameters: LcmsSubmissionParameters :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1997,8 +2014,8 @@ def import_ms_run_data( def import_ms_run_data_with_http_info( self, project_id: Annotated[StrictStr, Field(description="Project-space to import into.")], - input_files: Optional[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]]] = None, - parameters: Optional[LcmsSubmissionParameters] = None, + input_files: Annotated[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]], Field(description="Files to import into project.")], + parameters: Annotated[LcmsSubmissionParameters, Field(description="Parameters for feature alignment and feature finding.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2018,9 +2035,9 @@ def import_ms_run_data_with_http_info( :param project_id: Project-space to import into. (required) :type project_id: str - :param input_files: + :param input_files: Files to import into project. (required) :type input_files: List[bytearray] - :param parameters: + :param parameters: Parameters for feature alignment and feature finding. (required) :type parameters: LcmsSubmissionParameters :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -2072,8 +2089,8 @@ def import_ms_run_data_with_http_info( def import_ms_run_data_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="Project-space to import into.")], - input_files: Optional[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]]] = None, - parameters: Optional[LcmsSubmissionParameters] = None, + input_files: Annotated[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]], Field(description="Files to import into project.")], + parameters: Annotated[LcmsSubmissionParameters, Field(description="Parameters for feature alignment and feature finding.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2093,9 +2110,9 @@ def import_ms_run_data_without_preload_content( :param project_id: Project-space to import into. (required) :type project_id: str - :param input_files: + :param input_files: Files to import into project. (required) :type input_files: List[bytearray] - :param parameters: + :param parameters: Parameters for feature alignment and feature finding. (required) :type parameters: LcmsSubmissionParameters :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -2223,9 +2240,9 @@ def _import_ms_run_data_serialize( def import_ms_run_data_as_job( self, project_id: Annotated[StrictStr, Field(description="Project-space to import into.")], - opt_fields: Annotated[Optional[List[Optional[JobOptField]]], Field(description="Set of optional fields to be included. Use 'none' only to override defaults.")] = None, - input_files: Optional[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]]] = None, - parameters: Optional[LcmsSubmissionParameters] = None, + input_files: Annotated[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]], Field(description="Files to import into project.")], + parameters: Annotated[LcmsSubmissionParameters, Field(description="Parameters for feature alignment and feature finding.")], + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="Set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2245,12 +2262,12 @@ def import_ms_run_data_as_job( :param project_id: Project-space to import into. (required) :type project_id: str - :param opt_fields: Set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[JobOptField] - :param input_files: + :param input_files: Files to import into project. (required) :type input_files: List[bytearray] - :param parameters: + :param parameters: Parameters for feature alignment and feature finding. (required) :type parameters: LcmsSubmissionParameters + :param opt_fields: Set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[JobOptField] :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 @@ -2275,9 +2292,9 @@ def import_ms_run_data_as_job( _param = self._import_ms_run_data_as_job_serialize( project_id=project_id, - opt_fields=opt_fields, input_files=input_files, parameters=parameters, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -2302,9 +2319,9 @@ def import_ms_run_data_as_job( def import_ms_run_data_as_job_with_http_info( self, project_id: Annotated[StrictStr, Field(description="Project-space to import into.")], - opt_fields: Annotated[Optional[List[Optional[JobOptField]]], Field(description="Set of optional fields to be included. Use 'none' only to override defaults.")] = None, - input_files: Optional[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]]] = None, - parameters: Optional[LcmsSubmissionParameters] = None, + input_files: Annotated[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]], Field(description="Files to import into project.")], + parameters: Annotated[LcmsSubmissionParameters, Field(description="Parameters for feature alignment and feature finding.")], + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="Set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2324,12 +2341,12 @@ def import_ms_run_data_as_job_with_http_info( :param project_id: Project-space to import into. (required) :type project_id: str - :param opt_fields: Set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[JobOptField] - :param input_files: + :param input_files: Files to import into project. (required) :type input_files: List[bytearray] - :param parameters: + :param parameters: Parameters for feature alignment and feature finding. (required) :type parameters: LcmsSubmissionParameters + :param opt_fields: Set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[JobOptField] :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 @@ -2354,9 +2371,9 @@ def import_ms_run_data_as_job_with_http_info( _param = self._import_ms_run_data_as_job_serialize( project_id=project_id, - opt_fields=opt_fields, input_files=input_files, parameters=parameters, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -2381,9 +2398,9 @@ def import_ms_run_data_as_job_with_http_info( def import_ms_run_data_as_job_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="Project-space to import into.")], - opt_fields: Annotated[Optional[List[Optional[JobOptField]]], Field(description="Set of optional fields to be included. Use 'none' only to override defaults.")] = None, - input_files: Optional[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]]] = None, - parameters: Optional[LcmsSubmissionParameters] = None, + input_files: Annotated[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]], Field(description="Files to import into project.")], + parameters: Annotated[LcmsSubmissionParameters, Field(description="Parameters for feature alignment and feature finding.")], + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="Set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2403,12 +2420,12 @@ def import_ms_run_data_as_job_without_preload_content( :param project_id: Project-space to import into. (required) :type project_id: str - :param opt_fields: Set of optional fields to be included. Use 'none' only to override defaults. - :type opt_fields: List[JobOptField] - :param input_files: + :param input_files: Files to import into project. (required) :type input_files: List[bytearray] - :param parameters: + :param parameters: Parameters for feature alignment and feature finding. (required) :type parameters: LcmsSubmissionParameters + :param opt_fields: Set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[JobOptField] :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 @@ -2433,9 +2450,9 @@ def import_ms_run_data_as_job_without_preload_content( _param = self._import_ms_run_data_as_job_serialize( project_id=project_id, - opt_fields=opt_fields, input_files=input_files, parameters=parameters, + opt_fields=opt_fields, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -2455,9 +2472,9 @@ def import_ms_run_data_as_job_without_preload_content( def _import_ms_run_data_as_job_serialize( self, project_id, - opt_fields, input_files, parameters, + opt_fields, _request_auth, _content_type, _headers, @@ -2467,8 +2484,8 @@ def _import_ms_run_data_as_job_serialize( _host = None _collection_formats: Dict[str, str] = { - 'optFields': 'multi', 'inputFiles': 'csv', + 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -2542,9 +2559,9 @@ def _import_ms_run_data_as_job_serialize( def import_preprocessed_data( self, project_id: Annotated[StrictStr, Field(description="project-space to import into.")], + input_files: Annotated[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]], Field(description="files to import into project")], ignore_formulas: Optional[StrictBool] = None, allow_ms1_only: Optional[StrictBool] = None, - input_files: Optional[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]]] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2564,12 +2581,12 @@ def import_preprocessed_data( :param project_id: project-space to import into. (required) :type project_id: str + :param input_files: files to import into project (required) + :type input_files: List[bytearray] :param ignore_formulas: :type ignore_formulas: bool :param allow_ms1_only: :type allow_ms1_only: bool - :param input_files: - :type input_files: List[bytearray] :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 @@ -2594,9 +2611,9 @@ def import_preprocessed_data( _param = self._import_preprocessed_data_serialize( project_id=project_id, + input_files=input_files, ignore_formulas=ignore_formulas, allow_ms1_only=allow_ms1_only, - input_files=input_files, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -2621,9 +2638,9 @@ def import_preprocessed_data( def import_preprocessed_data_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to import into.")], + input_files: Annotated[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]], Field(description="files to import into project")], ignore_formulas: Optional[StrictBool] = None, allow_ms1_only: Optional[StrictBool] = None, - input_files: Optional[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]]] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2643,12 +2660,12 @@ def import_preprocessed_data_with_http_info( :param project_id: project-space to import into. (required) :type project_id: str + :param input_files: files to import into project (required) + :type input_files: List[bytearray] :param ignore_formulas: :type ignore_formulas: bool :param allow_ms1_only: :type allow_ms1_only: bool - :param input_files: - :type input_files: List[bytearray] :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 @@ -2673,9 +2690,9 @@ def import_preprocessed_data_with_http_info( _param = self._import_preprocessed_data_serialize( project_id=project_id, + input_files=input_files, ignore_formulas=ignore_formulas, allow_ms1_only=allow_ms1_only, - input_files=input_files, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -2700,9 +2717,9 @@ def import_preprocessed_data_with_http_info( def import_preprocessed_data_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to import into.")], + input_files: Annotated[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]], Field(description="files to import into project")], ignore_formulas: Optional[StrictBool] = None, allow_ms1_only: Optional[StrictBool] = None, - input_files: Optional[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]]] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2722,12 +2739,12 @@ def import_preprocessed_data_without_preload_content( :param project_id: project-space to import into. (required) :type project_id: str + :param input_files: files to import into project (required) + :type input_files: List[bytearray] :param ignore_formulas: :type ignore_formulas: bool :param allow_ms1_only: :type allow_ms1_only: bool - :param input_files: - :type input_files: List[bytearray] :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 @@ -2752,9 +2769,9 @@ def import_preprocessed_data_without_preload_content( _param = self._import_preprocessed_data_serialize( project_id=project_id, + input_files=input_files, ignore_formulas=ignore_formulas, allow_ms1_only=allow_ms1_only, - input_files=input_files, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -2774,9 +2791,9 @@ def import_preprocessed_data_without_preload_content( def _import_preprocessed_data_serialize( self, project_id, + input_files, ignore_formulas, allow_ms1_only, - input_files, _request_auth, _content_type, _headers, @@ -2862,10 +2879,10 @@ def _import_preprocessed_data_serialize( def import_preprocessed_data_as_job( self, project_id: Annotated[StrictStr, Field(description="project-space to import into.")], + input_files: List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]], ignore_formulas: Optional[StrictBool] = None, allow_ms1_only: Optional[StrictBool] = None, - opt_fields: Annotated[Optional[List[Optional[JobOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, - input_files: Optional[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]]] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2885,14 +2902,14 @@ def import_preprocessed_data_as_job( :param project_id: project-space to import into. (required) :type project_id: str + :param input_files: (required) + :type input_files: List[bytearray] :param ignore_formulas: :type ignore_formulas: bool :param allow_ms1_only: :type allow_ms1_only: bool :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. :type opt_fields: List[JobOptField] - :param input_files: - :type input_files: List[bytearray] :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 @@ -2917,10 +2934,10 @@ def import_preprocessed_data_as_job( _param = self._import_preprocessed_data_as_job_serialize( project_id=project_id, + input_files=input_files, ignore_formulas=ignore_formulas, allow_ms1_only=allow_ms1_only, opt_fields=opt_fields, - input_files=input_files, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -2945,10 +2962,10 @@ def import_preprocessed_data_as_job( def import_preprocessed_data_as_job_with_http_info( self, project_id: Annotated[StrictStr, Field(description="project-space to import into.")], + input_files: List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]], ignore_formulas: Optional[StrictBool] = None, allow_ms1_only: Optional[StrictBool] = None, - opt_fields: Annotated[Optional[List[Optional[JobOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, - input_files: Optional[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]]] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2968,14 +2985,14 @@ def import_preprocessed_data_as_job_with_http_info( :param project_id: project-space to import into. (required) :type project_id: str + :param input_files: (required) + :type input_files: List[bytearray] :param ignore_formulas: :type ignore_formulas: bool :param allow_ms1_only: :type allow_ms1_only: bool :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. :type opt_fields: List[JobOptField] - :param input_files: - :type input_files: List[bytearray] :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 @@ -3000,10 +3017,10 @@ def import_preprocessed_data_as_job_with_http_info( _param = self._import_preprocessed_data_as_job_serialize( project_id=project_id, + input_files=input_files, ignore_formulas=ignore_formulas, allow_ms1_only=allow_ms1_only, opt_fields=opt_fields, - input_files=input_files, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -3028,10 +3045,10 @@ def import_preprocessed_data_as_job_with_http_info( def import_preprocessed_data_as_job_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="project-space to import into.")], + input_files: List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]], ignore_formulas: Optional[StrictBool] = None, allow_ms1_only: Optional[StrictBool] = None, - opt_fields: Annotated[Optional[List[Optional[JobOptField]]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, - input_files: Optional[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]]] = None, + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -3051,14 +3068,14 @@ def import_preprocessed_data_as_job_without_preload_content( :param project_id: project-space to import into. (required) :type project_id: str + :param input_files: (required) + :type input_files: List[bytearray] :param ignore_formulas: :type ignore_formulas: bool :param allow_ms1_only: :type allow_ms1_only: bool :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. :type opt_fields: List[JobOptField] - :param input_files: - :type input_files: List[bytearray] :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 @@ -3083,10 +3100,10 @@ def import_preprocessed_data_as_job_without_preload_content( _param = self._import_preprocessed_data_as_job_serialize( project_id=project_id, + input_files=input_files, ignore_formulas=ignore_formulas, allow_ms1_only=allow_ms1_only, opt_fields=opt_fields, - input_files=input_files, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -3106,10 +3123,10 @@ def import_preprocessed_data_as_job_without_preload_content( def _import_preprocessed_data_as_job_serialize( self, project_id, + input_files, ignore_formulas, allow_ms1_only, opt_fields, - input_files, _request_auth, _content_type, _headers, @@ -3119,8 +3136,8 @@ def _import_preprocessed_data_as_job_serialize( _host = None _collection_formats: Dict[str, str] = { - 'optFields': 'multi', 'inputFiles': 'csv', + 'optFields': 'multi', } _path_params: Dict[str, str] = {} @@ -3201,7 +3218,7 @@ def open_project( self, project_id: Annotated[StrictStr, Field(description="unique name/identifier that shall be used to access the opened project-space. Must consist only of [a-zA-Z0-9_-].")], path_to_project: Annotated[Optional[StrictStr], Field(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.")] = None, - opt_fields: Optional[List[Optional[ProjectInfoOptField]]] = None, + opt_fields: Optional[List[ProjectInfoOptField]] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -3276,7 +3293,7 @@ def open_project_with_http_info( self, project_id: Annotated[StrictStr, Field(description="unique name/identifier that shall be used to access the opened project-space. Must consist only of [a-zA-Z0-9_-].")], path_to_project: Annotated[Optional[StrictStr], Field(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.")] = None, - opt_fields: Optional[List[Optional[ProjectInfoOptField]]] = None, + opt_fields: Optional[List[ProjectInfoOptField]] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -3351,7 +3368,7 @@ def open_project_without_preload_content( self, project_id: Annotated[StrictStr, Field(description="unique name/identifier that shall be used to access the opened project-space. Must consist only of [a-zA-Z0-9_-].")], path_to_project: Annotated[Optional[StrictStr], Field(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.")] = None, - opt_fields: Optional[List[Optional[ProjectInfoOptField]]] = None, + opt_fields: Optional[List[ProjectInfoOptField]] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], diff --git a/client-api_python/generated/PySirius/api/runs_api.py b/client-api_python/generated/PySirius/api/runs_api.py new file mode 100644 index 00000000..292d5888 --- /dev/null +++ b/client-api_python/generated/PySirius/api/runs_api.py @@ -0,0 +1,2505 @@ +# 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, StrictStr +from typing import List, Optional +from typing_extensions import Annotated +from PySirius.models.job import Job +from PySirius.models.job_opt_field import JobOptField +from PySirius.models.paged_model_run import PagedModelRun +from PySirius.models.run import Run +from PySirius.models.run_opt_field import RunOptField +from PySirius.models.sample_type_fold_change_request import SampleTypeFoldChangeRequest +from PySirius.models.tag import Tag + +from PySirius.api_client import ApiClient, RequestSerialized +from PySirius.api_response import ApiResponse +from PySirius.rest import RESTResponseType + + +class RunsApi: + """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 add_tags_to_run_experimental( + self, + project_id: Annotated[StrictStr, Field(description="project-space to add to.")], + run_id: Annotated[StrictStr, Field(description="run to add tags to.")], + tag: Annotated[List[Tag], Field(description="tags to add.")], + _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[Tag]: + """[EXPERIMENTAL] Add tags to a run in the project + + [EXPERIMENTAL] Add tags to a run in the project. Tags with the same name will be overwritten.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to add to. (required) + :type project_id: str + :param run_id: run to add tags to. (required) + :type run_id: str + :param tag: tags to add. (required) + :type tag: List[Tag] + :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._add_tags_to_run_experimental_serialize( + project_id=project_id, + run_id=run_id, + tag=tag, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[Tag]", + } + 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 add_tags_to_run_experimental_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to add to.")], + run_id: Annotated[StrictStr, Field(description="run to add tags to.")], + tag: Annotated[List[Tag], Field(description="tags to add.")], + _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[Tag]]: + """[EXPERIMENTAL] Add tags to a run in the project + + [EXPERIMENTAL] Add tags to a run in the project. Tags with the same name will be overwritten.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to add to. (required) + :type project_id: str + :param run_id: run to add tags to. (required) + :type run_id: str + :param tag: tags to add. (required) + :type tag: List[Tag] + :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._add_tags_to_run_experimental_serialize( + project_id=project_id, + run_id=run_id, + tag=tag, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[Tag]", + } + 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 add_tags_to_run_experimental_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to add to.")], + run_id: Annotated[StrictStr, Field(description="run to add tags to.")], + tag: Annotated[List[Tag], Field(description="tags to add.")], + _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: + """[EXPERIMENTAL] Add tags to a run in the project + + [EXPERIMENTAL] Add tags to a run in the project. Tags with the same name will be overwritten.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to add to. (required) + :type project_id: str + :param run_id: run to add tags to. (required) + :type run_id: str + :param tag: tags to add. (required) + :type tag: List[Tag] + :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._add_tags_to_run_experimental_serialize( + project_id=project_id, + run_id=run_id, + tag=tag, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[Tag]", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _add_tags_to_run_experimental_serialize( + self, + project_id, + run_id, + tag, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + 'Tag': '', + } + + _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, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + if run_id is not None: + _path_params['runId'] = run_id + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + if tag is not None: + _body_params = tag + + + # set the HTTP header `Accept` + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + # set the HTTP header `Content-Type` + if _content_type: + _header_params['Content-Type'] = _content_type + else: + _default_content_type = ( + self.api_client.select_header_content_type( + [ + 'application/json' + ] + ) + ) + if _default_content_type is not None: + _header_params['Content-Type'] = _default_content_type + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='PUT', + resource_path='/api/projects/{projectId}/runs/tags/{runId}', + 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 compute_fold_change_for_blank_subtraction( + self, + project_id: Annotated[StrictStr, Field(description="project-space to compute the fold change in.")], + sample_type_fold_change_request: Annotated[SampleTypeFoldChangeRequest, Field(description="request with lists of run IDs that are sample, blank, and control runs")], + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="job opt fields.")] = 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, + ) -> Job: + """**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter + + **EXPERIMENTAL** Compute the fold changes that are required for the fold change filter.
This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.
+ + :param project_id: project-space to compute the fold change in. (required) + :type project_id: str + :param sample_type_fold_change_request: request with lists of run IDs that are sample, blank, and control runs (required) + :type sample_type_fold_change_request: SampleTypeFoldChangeRequest + :param opt_fields: job opt fields. + :type opt_fields: List[JobOptField] + :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._compute_fold_change_for_blank_subtraction_serialize( + project_id=project_id, + sample_type_fold_change_request=sample_type_fold_change_request, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "Job", + } + 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 compute_fold_change_for_blank_subtraction_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to compute the fold change in.")], + sample_type_fold_change_request: Annotated[SampleTypeFoldChangeRequest, Field(description="request with lists of run IDs that are sample, blank, and control runs")], + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="job opt fields.")] = 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[Job]: + """**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter + + **EXPERIMENTAL** Compute the fold changes that are required for the fold change filter.This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.
+ + :param project_id: project-space to compute the fold change in. (required) + :type project_id: str + :param sample_type_fold_change_request: request with lists of run IDs that are sample, blank, and control runs (required) + :type sample_type_fold_change_request: SampleTypeFoldChangeRequest + :param opt_fields: job opt fields. + :type opt_fields: List[JobOptField] + :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._compute_fold_change_for_blank_subtraction_serialize( + project_id=project_id, + sample_type_fold_change_request=sample_type_fold_change_request, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "Job", + } + 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 compute_fold_change_for_blank_subtraction_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to compute the fold change in.")], + sample_type_fold_change_request: Annotated[SampleTypeFoldChangeRequest, Field(description="request with lists of run IDs that are sample, blank, and control runs")], + opt_fields: Annotated[Optional[List[JobOptField]], Field(description="job opt fields.")] = 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: + """**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter + + **EXPERIMENTAL** Compute the fold changes that are required for the fold change filter.This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.
+ + :param project_id: project-space to compute the fold change in. (required) + :type project_id: str + :param sample_type_fold_change_request: request with lists of run IDs that are sample, blank, and control runs (required) + :type sample_type_fold_change_request: SampleTypeFoldChangeRequest + :param opt_fields: job opt fields. + :type opt_fields: List[JobOptField] + :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._compute_fold_change_for_blank_subtraction_serialize( + project_id=project_id, + sample_type_fold_change_request=sample_type_fold_change_request, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "Job", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _compute_fold_change_for_blank_subtraction_serialize( + self, + project_id, + sample_type_fold_change_request, + opt_fields, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + 'optFields': 'multi', + } + + _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, str] = {} + _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 opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) + + # process the header parameters + # process the form parameters + # process the body parameter + if sample_type_fold_change_request is not None: + _body_params = sample_type_fold_change_request + + + # set the HTTP header `Accept` + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + # set the HTTP header `Content-Type` + if _content_type: + _header_params['Content-Type'] = _content_type + else: + _default_content_type = ( + self.api_client.select_header_content_type( + [ + 'application/json' + ] + ) + ) + if _default_content_type is not None: + _header_params['Content-Type'] = _default_content_type + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='PUT', + resource_path='/api/projects/{projectId}/runs/blanksubtract/compute', + 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_run_experimental( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + run_id: Annotated[StrictStr, Field(description="identifier of run to access.")], + opt_fields: Annotated[Optional[List[RunOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = 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, + ) -> Run: + """[EXPERIMENTAL] Get run with the given identifier from the specified project-space + + [EXPERIMENTAL] Get run with the given identifier from the specified project-space.[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param run_id: identifier of run to access. (required) + :type run_id: str + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[RunOptField] + :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_run_experimental_serialize( + project_id=project_id, + run_id=run_id, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "Run", + } + 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_run_experimental_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + run_id: Annotated[StrictStr, Field(description="identifier of run to access.")], + opt_fields: Annotated[Optional[List[RunOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = 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[Run]: + """[EXPERIMENTAL] Get run with the given identifier from the specified project-space + + [EXPERIMENTAL] Get run with the given identifier from the specified project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param run_id: identifier of run to access. (required) + :type run_id: str + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[RunOptField] + :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_run_experimental_serialize( + project_id=project_id, + run_id=run_id, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "Run", + } + 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_run_experimental_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + run_id: Annotated[StrictStr, Field(description="identifier of run to access.")], + opt_fields: Annotated[Optional[List[RunOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = 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: + """[EXPERIMENTAL] Get run with the given identifier from the specified project-space + + [EXPERIMENTAL] Get run with the given identifier from the specified project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param run_id: identifier of run to access. (required) + :type run_id: str + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[RunOptField] + :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_run_experimental_serialize( + project_id=project_id, + run_id=run_id, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "Run", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_run_experimental_serialize( + self, + project_id, + run_id, + opt_fields, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + 'optFields': 'multi', + } + + _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, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + if run_id is not None: + _path_params['runId'] = run_id + # process the query parameters + if opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/runs/{runId}', + 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_run_page_experimental( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[RunOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = 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, + ) -> PagedModelRun: + """[EXPERIMENTAL] Get all available runs in the given project-space + + [EXPERIMENTAL] Get all available runs in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[RunOptField] + :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_run_page_experimental_serialize( + project_id=project_id, + page=page, + size=size, + sort=sort, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "PagedModelRun", + } + 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_run_page_experimental_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[RunOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = 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[PagedModelRun]: + """[EXPERIMENTAL] Get all available runs in the given project-space + + [EXPERIMENTAL] Get all available runs in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[RunOptField] + :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_run_page_experimental_serialize( + project_id=project_id, + page=page, + size=size, + sort=sort, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "PagedModelRun", + } + 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_run_page_experimental_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[RunOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = 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: + """[EXPERIMENTAL] Get all available runs in the given project-space + + [EXPERIMENTAL] Get all available runs in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[RunOptField] + :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_run_page_experimental_serialize( + project_id=project_id, + page=page, + size=size, + sort=sort, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "PagedModelRun", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_run_page_experimental_serialize( + self, + project_id, + page, + size, + sort, + opt_fields, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + 'sort': 'multi', + 'optFields': 'multi', + } + + _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, str] = {} + _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 page is not None: + + _query_params.append(('page', page)) + + if size is not None: + + _query_params.append(('size', size)) + + if sort is not None: + + _query_params.append(('sort', sort)) + + if opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/runs/page', + 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_runs_by_group_experimental( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + group_name: Annotated[StrictStr, Field(description="tag group name.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[RunOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = 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, + ) -> PagedModelRun: + """[EXPERIMENTAL] Get runs by tag group + + [EXPERIMENTAL] Get runs by tag group.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param group_name: tag group name. (required) + :type group_name: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[RunOptField] + :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_runs_by_group_experimental_serialize( + project_id=project_id, + group_name=group_name, + page=page, + size=size, + sort=sort, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "PagedModelRun", + } + 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_runs_by_group_experimental_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + group_name: Annotated[StrictStr, Field(description="tag group name.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[RunOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = 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[PagedModelRun]: + """[EXPERIMENTAL] Get runs by tag group + + [EXPERIMENTAL] Get runs by tag group.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param group_name: tag group name. (required) + :type group_name: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[RunOptField] + :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_runs_by_group_experimental_serialize( + project_id=project_id, + group_name=group_name, + page=page, + size=size, + sort=sort, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "PagedModelRun", + } + 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_runs_by_group_experimental_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + group_name: Annotated[StrictStr, Field(description="tag group name.")], + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[RunOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = 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: + """[EXPERIMENTAL] Get runs by tag group + + [EXPERIMENTAL] Get runs by tag group.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param group_name: tag group name. (required) + :type group_name: str + :param page: Zero-based page index (0..N) + :type page: int + :param size: The size of the page to be returned + :type size: int + :param sort: Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + :type sort: List[str] + :param opt_fields: set of optional fields to be included. Use 'none' only to override defaults. + :type opt_fields: List[RunOptField] + :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_runs_by_group_experimental_serialize( + project_id=project_id, + group_name=group_name, + page=page, + size=size, + sort=sort, + opt_fields=opt_fields, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "PagedModelRun", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_runs_by_group_experimental_serialize( + self, + project_id, + group_name, + page, + size, + sort, + opt_fields, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + 'sort': 'multi', + 'optFields': 'multi', + } + + _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, str] = {} + _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 group_name is not None: + + _query_params.append(('groupName', group_name)) + + if page is not None: + + _query_params.append(('page', page)) + + if size is not None: + + _query_params.append(('size', size)) + + if sort is not None: + + _query_params.append(('sort', sort)) + + if opt_fields is not None: + + _query_params.append(('optFields', opt_fields)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/runs/grouped', + 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_runs_by_tag_experimental( + self, + project_id: Annotated[StrictStr, Field(description="project space to get runs from.")], + filter: Annotated[Optional[StrictStr], Field(description="tag filter.")] = None, + page: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Zero-based page index (0..N)")] = None, + size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The size of the page to be returned")] = None, + sort: Annotated[Optional[List[StrictStr]], Field(description="Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.")] = None, + opt_fields: Annotated[Optional[List[RunOptField]], Field(description="set of optional fields to be included. Use 'none' only to override defaults.")] = 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, + ) -> PagedModelRun: + """[EXPERIMENTAL] Get runs by tag + + [EXPERIMENTAL] Get runs by tag.
The filter string must contain one or more clauses. A clause is prefÃxed by a field name.
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). Tag name based field need to be prefixed with the namespace tags.. Possible value types of tags are bool, integer, real, text, date, or time - tag value The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.
A clause may be:
tags.MyTagA:sampletags.MyTagA:"Some Text"tags.MyTagA:/[mb]oat/tags.MyTagB<3[ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3] Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )
The syntax allows to build complex filter queries such as:
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
The filter string must contain one or more clauses. A clause is prefÃxed by a field name.
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). Tag name based field need to be prefixed with the namespace tags.. Possible value types of tags are bool, integer, real, text, date, or time - tag value The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.
A clause may be:
tags.MyTagA:sampletags.MyTagA:"Some Text"tags.MyTagA:/[mb]oat/tags.MyTagB<3[ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3] Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )
The syntax allows to build complex filter queries such as:
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
The filter string must contain one or more clauses. A clause is prefÃxed by a field name.
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). Tag name based field need to be prefixed with the namespace tags.. Possible value types of tags are bool, integer, real, text, date, or time - tag value The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.
A clause may be:
tags.MyTagA:sampletags.MyTagA:"Some Text"tags.MyTagA:/[mb]oat/tags.MyTagB<3[ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3] Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )
The syntax allows to build complex filter queries such as:
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
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param run_id: run to delete tag from. (required) + :type run_id: str + :param tag_name: name of the tag to delete. (required) + :type tag_name: 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._remove_tag_from_run_experimental_serialize( + project_id=project_id, + run_id=run_id, + tag_name=tag_name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': 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 remove_tag_from_run_experimental_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + run_id: Annotated[StrictStr, Field(description="run to delete tag from.")], + tag_name: Annotated[StrictStr, Field(description="name of the tag to delete.")], + _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]: + """[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space + + [EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param run_id: run to delete tag from. (required) + :type run_id: str + :param tag_name: name of the tag to delete. (required) + :type tag_name: 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._remove_tag_from_run_experimental_serialize( + project_id=project_id, + run_id=run_id, + tag_name=tag_name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': 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 remove_tag_from_run_experimental_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + run_id: Annotated[StrictStr, Field(description="run to delete tag from.")], + tag_name: Annotated[StrictStr, Field(description="name of the tag to delete.")], + _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: + """[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space + + [EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param run_id: run to delete tag from. (required) + :type run_id: str + :param tag_name: name of the tag to delete. (required) + :type tag_name: 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._remove_tag_from_run_experimental_serialize( + project_id=project_id, + run_id=run_id, + tag_name=tag_name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': None, + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _remove_tag_from_run_experimental_serialize( + self, + project_id, + run_id, + tag_name, + _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, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + if run_id is not None: + _path_params['runId'] = run_id + if tag_name is not None: + _path_params['tagName'] = tag_name + # 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='DELETE', + resource_path='/api/projects/{projectId}/runs/tags/{runId}/{tagName}', + 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/api/searchable_databases_api.py b/client-api_python/generated/PySirius/api/searchable_databases_api.py index aa2d5177..636c5979 100644 --- a/client-api_python/generated/PySirius/api/searchable_databases_api.py +++ b/client-api_python/generated/PySirius/api/searchable_databases_api.py @@ -17,6 +17,7 @@ from pydantic import Field, StrictBool, StrictBytes, StrictInt, StrictStr, field_validator from typing import List, Optional, Tuple, Union from typing_extensions import Annotated +from PySirius.models.bio_transformer_parameters import BioTransformerParameters from PySirius.models.searchable_database import SearchableDatabase from PySirius.models.searchable_database_parameters import SearchableDatabaseParameters @@ -1668,8 +1669,9 @@ def _get_included_databases_serialize( def import_into_database( self, database_id: Annotated[StrictStr, Field(description="database to import into")], + input_files: Annotated[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]], Field(description="files to be imported")], buffer_size: Optional[StrictInt] = None, - input_files: Optional[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]]] = None, + bio_transformer_parameters: Annotated[Optional[BioTransformerParameters], Field(description="configuration for biotransformer execution. If null, BioTransformer is not applied.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1689,10 +1691,12 @@ def import_into_database( :param database_id: database to import into (required) :type database_id: str + :param input_files: files to be imported (required) + :type input_files: List[bytearray] :param buffer_size: :type buffer_size: int - :param input_files: - :type input_files: List[bytearray] + :param bio_transformer_parameters: configuration for biotransformer execution. If null, BioTransformer is not applied. + :type bio_transformer_parameters: BioTransformerParameters :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 @@ -1717,8 +1721,9 @@ def import_into_database( _param = self._import_into_database_serialize( database_id=database_id, - buffer_size=buffer_size, input_files=input_files, + buffer_size=buffer_size, + bio_transformer_parameters=bio_transformer_parameters, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1743,8 +1748,9 @@ def import_into_database( def import_into_database_with_http_info( self, database_id: Annotated[StrictStr, Field(description="database to import into")], + input_files: Annotated[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]], Field(description="files to be imported")], buffer_size: Optional[StrictInt] = None, - input_files: Optional[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]]] = None, + bio_transformer_parameters: Annotated[Optional[BioTransformerParameters], Field(description="configuration for biotransformer execution. If null, BioTransformer is not applied.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1764,10 +1770,12 @@ def import_into_database_with_http_info( :param database_id: database to import into (required) :type database_id: str + :param input_files: files to be imported (required) + :type input_files: List[bytearray] :param buffer_size: :type buffer_size: int - :param input_files: - :type input_files: List[bytearray] + :param bio_transformer_parameters: configuration for biotransformer execution. If null, BioTransformer is not applied. + :type bio_transformer_parameters: BioTransformerParameters :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 @@ -1792,8 +1800,9 @@ def import_into_database_with_http_info( _param = self._import_into_database_serialize( database_id=database_id, - buffer_size=buffer_size, input_files=input_files, + buffer_size=buffer_size, + bio_transformer_parameters=bio_transformer_parameters, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1818,8 +1827,9 @@ def import_into_database_with_http_info( def import_into_database_without_preload_content( self, database_id: Annotated[StrictStr, Field(description="database to import into")], + input_files: Annotated[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]], Field(description="files to be imported")], buffer_size: Optional[StrictInt] = None, - input_files: Optional[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]]] = None, + bio_transformer_parameters: Annotated[Optional[BioTransformerParameters], Field(description="configuration for biotransformer execution. If null, BioTransformer is not applied.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1839,10 +1849,12 @@ def import_into_database_without_preload_content( :param database_id: database to import into (required) :type database_id: str + :param input_files: files to be imported (required) + :type input_files: List[bytearray] :param buffer_size: :type buffer_size: int - :param input_files: - :type input_files: List[bytearray] + :param bio_transformer_parameters: configuration for biotransformer execution. If null, BioTransformer is not applied. + :type bio_transformer_parameters: BioTransformerParameters :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 @@ -1867,8 +1879,9 @@ def import_into_database_without_preload_content( _param = self._import_into_database_serialize( database_id=database_id, - buffer_size=buffer_size, input_files=input_files, + buffer_size=buffer_size, + bio_transformer_parameters=bio_transformer_parameters, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1888,8 +1901,9 @@ def import_into_database_without_preload_content( def _import_into_database_serialize( self, database_id, - buffer_size, input_files, + buffer_size, + bio_transformer_parameters, _request_auth, _content_type, _headers, @@ -1921,6 +1935,8 @@ def _import_into_database_serialize( # process the form parameters if input_files is not None: _files['inputFiles'] = input_files + if bio_transformer_parameters is not None: + _form_params.append(('bioTransformerParameters', bio_transformer_parameters)) # process the body parameter diff --git a/client-api_python/generated/PySirius/api/tags_api.py b/client-api_python/generated/PySirius/api/tags_api.py new file mode 100644 index 00000000..cba51a07 --- /dev/null +++ b/client-api_python/generated/PySirius/api/tags_api.py @@ -0,0 +1,2556 @@ +# 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, StrictStr +from typing import Any, List, Optional +from typing_extensions import Annotated +from PySirius.models.tag_definition import TagDefinition +from PySirius.models.tag_definition_import import TagDefinitionImport +from PySirius.models.tag_group import TagGroup + +from PySirius.api_client import ApiClient, RequestSerialized +from PySirius.api_response import ApiResponse +from PySirius.rest import RESTResponseType + + +class TagsApi: + """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 add_group( + self, + project_id: Annotated[StrictStr, Field(description="project-space to add to.")], + group_name: Annotated[StrictStr, Field(description="name of the new group")], + filter: Annotated[StrictStr, Field(description="filter query to create the group")], + type: Annotated[StrictStr, Field(description="type of the group")], + _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, + ) -> TagGroup: + """[EXPERIMENTAL] Group tags in the project + + [EXPERIMENTAL] Group tags in the project. The group name must not exist in the project.
See /tagged for filter syntax.
See /tagged for filter syntax.
See /tagged for filter syntax.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to add to. (required) + :type project_id: str + :param tag_name: the tag definition to add the values to (required) + :type tag_name: str + :param request_body: (required) + :type request_body: List[object] + :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._add_possible_values_to_tag_definition_serialize( + project_id=project_id, + tag_name=tag_name, + request_body=request_body, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "TagDefinition", + } + 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 add_possible_values_to_tag_definition_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to add to.")], + tag_name: Annotated[StrictStr, Field(description="the tag definition to add the values to")], + request_body: List[Any], + _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[TagDefinition]: + """[EXPERIMENTAL] Add a possible value to the tag definition in the project + + [EXPERIMENTAL] Add a possible value to the tag definition in the project.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to add to. (required) + :type project_id: str + :param tag_name: the tag definition to add the values to (required) + :type tag_name: str + :param request_body: (required) + :type request_body: List[object] + :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._add_possible_values_to_tag_definition_serialize( + project_id=project_id, + tag_name=tag_name, + request_body=request_body, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "TagDefinition", + } + 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 add_possible_values_to_tag_definition_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to add to.")], + tag_name: Annotated[StrictStr, Field(description="the tag definition to add the values to")], + request_body: List[Any], + _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: + """[EXPERIMENTAL] Add a possible value to the tag definition in the project + + [EXPERIMENTAL] Add a possible value to the tag definition in the project.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to add to. (required) + :type project_id: str + :param tag_name: the tag definition to add the values to (required) + :type tag_name: str + :param request_body: (required) + :type request_body: List[object] + :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._add_possible_values_to_tag_definition_serialize( + project_id=project_id, + tag_name=tag_name, + request_body=request_body, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "TagDefinition", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _add_possible_values_to_tag_definition_serialize( + self, + project_id, + tag_name, + request_body, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + 'request_body': '', + } + + _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, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + if tag_name is not None: + _path_params['tagName'] = tag_name + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + if request_body is not None: + _body_params = request_body + + + # set the HTTP header `Accept` + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + # set the HTTP header `Content-Type` + if _content_type: + _header_params['Content-Type'] = _content_type + else: + _default_content_type = ( + self.api_client.select_header_content_type( + [ + 'application/json' + ] + ) + ) + if _default_content_type is not None: + _header_params['Content-Type'] = _default_content_type + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='PATCH', + resource_path='/api/projects/{projectId}/tags/{tagName}', + 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 create_tags( + self, + project_id: Annotated[StrictStr, Field(description="project-space to add to.")], + tag_definition_import: Annotated[List[TagDefinitionImport], Field(description="the tag definitions to be created")], + _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[TagDefinition]: + """[EXPERIMENTAL] Add tags to the project + + [EXPERIMENTAL] Add tags to the project. Tag names must not exist in the project.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to add to. (required) + :type project_id: str + :param tag_definition_import: the tag definitions to be created (required) + :type tag_definition_import: List[TagDefinitionImport] + :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._create_tags_serialize( + project_id=project_id, + tag_definition_import=tag_definition_import, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[TagDefinition]", + } + 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 create_tags_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to add to.")], + tag_definition_import: Annotated[List[TagDefinitionImport], Field(description="the tag definitions to be created")], + _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[TagDefinition]]: + """[EXPERIMENTAL] Add tags to the project + + [EXPERIMENTAL] Add tags to the project. Tag names must not exist in the project.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to add to. (required) + :type project_id: str + :param tag_definition_import: the tag definitions to be created (required) + :type tag_definition_import: List[TagDefinitionImport] + :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._create_tags_serialize( + project_id=project_id, + tag_definition_import=tag_definition_import, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[TagDefinition]", + } + 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 create_tags_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to add to.")], + tag_definition_import: Annotated[List[TagDefinitionImport], Field(description="the tag definitions to be created")], + _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: + """[EXPERIMENTAL] Add tags to the project + + [EXPERIMENTAL] Add tags to the project. Tag names must not exist in the project.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to add to. (required) + :type project_id: str + :param tag_definition_import: the tag definitions to be created (required) + :type tag_definition_import: List[TagDefinitionImport] + :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._create_tags_serialize( + project_id=project_id, + tag_definition_import=tag_definition_import, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[TagDefinition]", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _create_tags_serialize( + self, + project_id, + tag_definition_import, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + 'TagDefinitionImport': '', + } + + _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, str] = {} + _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 + if tag_definition_import is not None: + _body_params = tag_definition_import + + + # set the HTTP header `Accept` + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + # set the HTTP header `Content-Type` + if _content_type: + _header_params['Content-Type'] = _content_type + else: + _default_content_type = ( + self.api_client.select_header_content_type( + [ + 'application/json' + ] + ) + ) + if _default_content_type is not None: + _header_params['Content-Type'] = _default_content_type + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='PUT', + resource_path='/api/projects/{projectId}/tags', + 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 delete_group( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + group_name: Annotated[StrictStr, Field(description="name of group to delete.")], + _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: + """[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space + + [EXPERIMENTAL] Delete tag groups with the given name from the specified project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param group_name: name of group to delete. (required) + :type group_name: 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._delete_group_serialize( + project_id=project_id, + group_name=group_name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': 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 delete_group_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + group_name: Annotated[StrictStr, Field(description="name of group to delete.")], + _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]: + """[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space + + [EXPERIMENTAL] Delete tag groups with the given name from the specified project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param group_name: name of group to delete. (required) + :type group_name: 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._delete_group_serialize( + project_id=project_id, + group_name=group_name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': 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 delete_group_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + group_name: Annotated[StrictStr, Field(description="name of group to delete.")], + _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: + """[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space + + [EXPERIMENTAL] Delete tag groups with the given name from the specified project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param group_name: name of group to delete. (required) + :type group_name: 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._delete_group_serialize( + project_id=project_id, + group_name=group_name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': None, + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _delete_group_serialize( + self, + project_id, + group_name, + _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, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + if group_name is not None: + _path_params['groupName'] = group_name + # 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='DELETE', + resource_path='/api/projects/{projectId}/groups/{groupName}', + 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 delete_tag( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + tag_name: Annotated[StrictStr, Field(description="name of the tag definition to delete.")], + _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: + """[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space + + [EXPERIMENTAL] Delete tag definition with the given name from the specified project-space.
This will also remove all tags belonging to this definition from every tagged entity.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param tag_name: name of the tag definition to delete. (required) + :type tag_name: 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._delete_tag_serialize( + project_id=project_id, + tag_name=tag_name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': 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 delete_tag_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + tag_name: Annotated[StrictStr, Field(description="name of the tag definition to delete.")], + _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]: + """[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space + + [EXPERIMENTAL] Delete tag definition with the given name from the specified project-space.This will also remove all tags belonging to this definition from every tagged entity.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param tag_name: name of the tag definition to delete. (required) + :type tag_name: 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._delete_tag_serialize( + project_id=project_id, + tag_name=tag_name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': 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 delete_tag_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to delete from.")], + tag_name: Annotated[StrictStr, Field(description="name of the tag definition to delete.")], + _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: + """[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space + + [EXPERIMENTAL] Delete tag definition with the given name from the specified project-space.This will also remove all tags belonging to this definition from every tagged entity.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to delete from. (required) + :type project_id: str + :param tag_name: name of the tag definition to delete. (required) + :type tag_name: 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._delete_tag_serialize( + project_id=project_id, + tag_name=tag_name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': None, + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _delete_tag_serialize( + self, + project_id, + tag_name, + _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, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + if tag_name is not None: + _path_params['tagName'] = tag_name + # 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='DELETE', + resource_path='/api/projects/{projectId}/tags/{tagName}', + 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_group_by_name( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + group_name: Annotated[StrictStr, Field(description="name of the group")], + _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, + ) -> TagGroup: + """[EXPERIMENTAL] Get tag group by name in the given project-space + + [EXPERIMENTAL] Get tag group by name in the given project-space.[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param group_name: name of the group (required) + :type group_name: 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._get_group_by_name_serialize( + project_id=project_id, + group_name=group_name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "TagGroup", + } + 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_group_by_name_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + group_name: Annotated[StrictStr, Field(description="name of the group")], + _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[TagGroup]: + """[EXPERIMENTAL] Get tag group by name in the given project-space + + [EXPERIMENTAL] Get tag group by name in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param group_name: name of the group (required) + :type group_name: 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._get_group_by_name_serialize( + project_id=project_id, + group_name=group_name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "TagGroup", + } + 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_group_by_name_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + group_name: Annotated[StrictStr, Field(description="name of the group")], + _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: + """[EXPERIMENTAL] Get tag group by name in the given project-space + + [EXPERIMENTAL] Get tag group by name in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param group_name: name of the group (required) + :type group_name: 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._get_group_by_name_serialize( + project_id=project_id, + group_name=group_name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "TagGroup", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_group_by_name_serialize( + self, + project_id, + group_name, + _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, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + if group_name is not None: + _path_params['groupName'] = group_name + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/groups/{groupName}', + 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_groups( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + group_type: Annotated[Optional[StrictStr], Field(description="type of the group")] = 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, + ) -> List[TagGroup]: + """[EXPERIMENTAL] Get all tag based groups in the given project-space + + [EXPERIMENTAL] Get all tag based groups in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param group_type: type of the group + :type group_type: 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._get_groups_serialize( + project_id=project_id, + group_type=group_type, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[TagGroup]", + } + 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_groups_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + group_type: Annotated[Optional[StrictStr], Field(description="type of the group")] = 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[List[TagGroup]]: + """[EXPERIMENTAL] Get all tag based groups in the given project-space + + [EXPERIMENTAL] Get all tag based groups in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param group_type: type of the group + :type group_type: 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._get_groups_serialize( + project_id=project_id, + group_type=group_type, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[TagGroup]", + } + 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_groups_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + group_type: Annotated[Optional[StrictStr], Field(description="type of the group")] = 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: + """[EXPERIMENTAL] Get all tag based groups in the given project-space + + [EXPERIMENTAL] Get all tag based groups in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param group_type: type of the group + :type group_type: 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._get_groups_serialize( + project_id=project_id, + group_type=group_type, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[TagGroup]", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_groups_serialize( + self, + project_id, + group_type, + _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, str] = {} + _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 group_type is not None: + + _query_params.append(('groupType', group_type)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/groups', + 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_tag( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + tag_name: Annotated[StrictStr, Field(description="name of the tag")], + _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, + ) -> TagDefinition: + """[EXPERIMENTAL] Get tag definition by its name in the given project-space + + [EXPERIMENTAL] Get tag definition by its name in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param tag_name: name of the tag (required) + :type tag_name: 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._get_tag_serialize( + project_id=project_id, + tag_name=tag_name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "TagDefinition", + } + 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_tag_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + tag_name: Annotated[StrictStr, Field(description="name of the tag")], + _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[TagDefinition]: + """[EXPERIMENTAL] Get tag definition by its name in the given project-space + + [EXPERIMENTAL] Get tag definition by its name in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param tag_name: name of the tag (required) + :type tag_name: 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._get_tag_serialize( + project_id=project_id, + tag_name=tag_name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "TagDefinition", + } + 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_tag_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + tag_name: Annotated[StrictStr, Field(description="name of the tag")], + _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: + """[EXPERIMENTAL] Get tag definition by its name in the given project-space + + [EXPERIMENTAL] Get tag definition by its name in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param tag_name: name of the tag (required) + :type tag_name: 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._get_tag_serialize( + project_id=project_id, + tag_name=tag_name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "TagDefinition", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_tag_serialize( + self, + project_id, + tag_name, + _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, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + if tag_name is not None: + _path_params['tagName'] = tag_name + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/tags/{tagName}', + 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_tags( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + tag_type: Annotated[Optional[StrictStr], Field(description="scope of the tag (optional)")] = 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, + ) -> List[TagDefinition]: + """[EXPERIMENTAL] Get all tag definitions in the given project-space + + [EXPERIMENTAL] Get all tag definitions in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param tag_type: scope of the tag (optional) + :type tag_type: 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._get_tags_serialize( + project_id=project_id, + tag_type=tag_type, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[TagDefinition]", + } + 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_tags_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + tag_type: Annotated[Optional[StrictStr], Field(description="scope of the tag (optional)")] = 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[List[TagDefinition]]: + """[EXPERIMENTAL] Get all tag definitions in the given project-space + + [EXPERIMENTAL] Get all tag definitions in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param tag_type: scope of the tag (optional) + :type tag_type: 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._get_tags_serialize( + project_id=project_id, + tag_type=tag_type, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[TagDefinition]", + } + 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_tags_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="project-space to read from.")], + tag_type: Annotated[Optional[StrictStr], Field(description="scope of the tag (optional)")] = 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: + """[EXPERIMENTAL] Get all tag definitions in the given project-space + + [EXPERIMENTAL] Get all tag definitions in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + + :param project_id: project-space to read from. (required) + :type project_id: str + :param tag_type: scope of the tag (optional) + :type tag_type: 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._get_tags_serialize( + project_id=project_id, + tag_type=tag_type, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[TagDefinition]", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_tags_serialize( + self, + project_id, + tag_type, + _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, str] = {} + _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 tag_type is not None: + + _query_params.append(('tagType', tag_type)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _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/projects/{projectId}/tags', + 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 0190fb57..f128526f 100644 --- a/client-api_python/generated/PySirius/models/__init__.py +++ b/client-api_python/generated/PySirius/models/__init__.py @@ -17,16 +17,21 @@ from PySirius.models.adduct_edge_experimental import AdductEdgeExperimental from PySirius.models.adduct_network_experimental import AdductNetworkExperimental from PySirius.models.adduct_node_experimental import AdductNodeExperimental +from PySirius.models.aggregation_type import AggregationType from PySirius.models.aligned_feature import AlignedFeature from PySirius.models.aligned_feature_opt_field import AlignedFeatureOptField from PySirius.models.aligned_feature_quality_experimental import AlignedFeatureQualityExperimental +from PySirius.models.allowed_features import AllowedFeatures from PySirius.models.annotated_ms_ms_data import AnnotatedMsMsData from PySirius.models.annotated_peak import AnnotatedPeak from PySirius.models.annotated_spectrum import AnnotatedSpectrum +from PySirius.models.api_version import ApiVersion from PySirius.models.axes import Axes from PySirius.models.background_computations_state_event import BackgroundComputationsStateEvent from PySirius.models.basic_spectrum import BasicSpectrum from PySirius.models.binary_fingerprint import BinaryFingerprint +from PySirius.models.bio_transformer_parameters import BioTransformerParameters +from PySirius.models.bio_transformer_sequence_step import BioTransformerSequenceStep from PySirius.models.canopus import Canopus from PySirius.models.canopus_prediction import CanopusPrediction from PySirius.models.category import Category @@ -46,6 +51,7 @@ from PySirius.models.consensus_annotations_de_novo import ConsensusAnnotationsDeNovo from PySirius.models.consensus_criterion_csi import ConsensusCriterionCSI from PySirius.models.consensus_criterion_de_novo import ConsensusCriterionDeNovo +from PySirius.models.cyp450_mode import Cyp450Mode from PySirius.models.db_link import DBLink from PySirius.models.data_import_event import DataImportEvent from PySirius.models.data_quality import DataQuality @@ -53,11 +59,11 @@ from PySirius.models.feature_annotations import FeatureAnnotations from PySirius.models.feature_import import FeatureImport from PySirius.models.fingerprint_prediction import FingerprintPrediction +from PySirius.models.fold_change import FoldChange from PySirius.models.formula_candidate import FormulaCandidate 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 @@ -73,18 +79,22 @@ from PySirius.models.license_info import LicenseInfo from PySirius.models.lipid_annotation import LipidAnnotation from PySirius.models.loss_edge import LossEdge +from PySirius.models.metabolic_transformation import MetabolicTransformation from PySirius.models.ms_data import MsData from PySirius.models.ms_novelist import MsNovelist +from PySirius.models.p2_mode import P2Mode from PySirius.models.page_metadata import PageMetadata from PySirius.models.paged_model_aligned_feature import PagedModelAlignedFeature from PySirius.models.paged_model_compound import PagedModelCompound from PySirius.models.paged_model_formula_candidate import PagedModelFormulaCandidate from PySirius.models.paged_model_job import PagedModelJob +from PySirius.models.paged_model_run import PagedModelRun from PySirius.models.paged_model_spectral_library_match import PagedModelSpectralLibraryMatch from PySirius.models.paged_model_structure_candidate_formula import PagedModelStructureCandidateFormula from PySirius.models.paged_model_structure_candidate_scored import PagedModelStructureCandidateScored from PySirius.models.parent_peak import ParentPeak from PySirius.models.peak_annotation import PeakAnnotation +from PySirius.models.peak_pair import PeakPair from PySirius.models.project_change_event import ProjectChangeEvent from PySirius.models.project_event_type import ProjectEventType from PySirius.models.project_info import ProjectInfo @@ -92,12 +102,16 @@ from PySirius.models.project_type import ProjectType from PySirius.models.quality_item import QualityItem from PySirius.models.quality_weight import QualityWeight -from PySirius.models.quantification_column_type import QuantificationColumnType -from PySirius.models.quantification_measure import QuantificationMeasure -from PySirius.models.quantification_row_type import QuantificationRowType -from PySirius.models.quantification_table_experimental import QuantificationTableExperimental +from PySirius.models.quant_measure import QuantMeasure +from PySirius.models.quant_row_type import QuantRowType +from PySirius.models.quant_table_experimental import QuantTableExperimental +from PySirius.models.run import Run +from PySirius.models.run_opt_field import RunOptField +from PySirius.models.sample_type_fold_change_request import SampleTypeFoldChangeRequest from PySirius.models.searchable_database import SearchableDatabase from PySirius.models.searchable_database_parameters import SearchableDatabaseParameters +from PySirius.models.security_context import SecurityContext +from PySirius.models.security_context_principal import SecurityContextPrincipal from PySirius.models.simple_peak import SimplePeak from PySirius.models.sirius import Sirius from PySirius.models.solver import Solver @@ -105,8 +119,12 @@ from PySirius.models.spectral_library_match_opt_field import SpectralLibraryMatchOptField from PySirius.models.spectral_library_match_summary import SpectralLibraryMatchSummary from PySirius.models.spectral_library_search import SpectralLibrarySearch +from PySirius.models.spectral_match_type import SpectralMatchType from PySirius.models.spectral_matching_type import SpectralMatchingType from PySirius.models.spectrum_annotation import SpectrumAnnotation +from PySirius.models.spectrum_type import SpectrumType +from PySirius.models.statistics_table import StatisticsTable +from PySirius.models.statistics_type import StatisticsType from PySirius.models.stored_job_submission import StoredJobSubmission from PySirius.models.structure_candidate import StructureCandidate from PySirius.models.structure_candidate_formula import StructureCandidateFormula @@ -115,6 +133,10 @@ from PySirius.models.structure_db_search import StructureDbSearch from PySirius.models.subscription import Subscription from PySirius.models.subscription_consumables import SubscriptionConsumables +from PySirius.models.tag import Tag +from PySirius.models.tag_definition import TagDefinition +from PySirius.models.tag_definition_import import TagDefinitionImport +from PySirius.models.tag_group import TagGroup from PySirius.models.term import Term from PySirius.models.timeout import Timeout from PySirius.models.trace_annotation_experimental import TraceAnnotationExperimental @@ -122,6 +144,10 @@ from PySirius.models.trace_experimental import TraceExperimental from PySirius.models.trace_set_experimental import TraceSetExperimental from PySirius.models.use_heuristic import UseHeuristic +from PySirius.models.value_type import ValueType +from PySirius.models.web_server_namespace import WebServerNamespace from PySirius.models.zodiac import Zodiac +from PySirius.models.zodiac_analogue_nodes import ZodiacAnalogueNodes from PySirius.models.zodiac_edge_filter_thresholds import ZodiacEdgeFilterThresholds from PySirius.models.zodiac_epochs import ZodiacEpochs +from PySirius.models.zodiac_library_scoring import ZodiacLibraryScoring diff --git a/client-api_python/generated/PySirius/models/account_credentials.py b/client-api_python/generated/PySirius/models/account_credentials.py index 2200eb83..a24d8ca8 100644 --- a/client-api_python/generated/PySirius/models/account_credentials.py +++ b/client-api_python/generated/PySirius/models/account_credentials.py @@ -68,21 +68,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if username (nullable) is None - # and model_fields_set contains the field - if self.username is None and "username" in self.model_fields_set: - _dict['username'] = None - - # set to None if password (nullable) is None - # and model_fields_set contains the field - if self.password is None and "password" in self.model_fields_set: - _dict['password'] = None - - # set to None if refresh_token (nullable) is None - # and model_fields_set contains the field - if self.refresh_token is None and "refresh_token" in self.model_fields_set: - _dict['refreshToken'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/account_info.py b/client-api_python/generated/PySirius/models/account_info.py index 1686ad45..bd467df1 100644 --- a/client-api_python/generated/PySirius/models/account_info.py +++ b/client-api_python/generated/PySirius/models/account_info.py @@ -79,21 +79,6 @@ def to_dict(self) -> Dict[str, Any]: if _item_subscriptions: _items.append(_item_subscriptions.to_dict()) _dict['subscriptions'] = _items - # set to None if username (nullable) is None - # and model_fields_set contains the field - if self.username is None and "username" in self.model_fields_set: - _dict['username'] = None - - # set to None if gravatar_url (nullable) is None - # and model_fields_set contains the field - if self.gravatar_url is None and "gravatar_url" in self.model_fields_set: - _dict['gravatarURL'] = None - - # set to None if active_subscription_id (nullable) is None - # and model_fields_set contains the field - if self.active_subscription_id is None and "active_subscription_id" in self.model_fields_set: - _dict['activeSubscriptionId'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/quantification_measure.py b/client-api_python/generated/PySirius/models/aggregation_type.py similarity index 71% rename from client-api_python/generated/PySirius/models/quantification_measure.py rename to client-api_python/generated/PySirius/models/aggregation_type.py index da63cd12..f22d6cfa 100644 --- a/client-api_python/generated/PySirius/models/quantification_measure.py +++ b/client-api_python/generated/PySirius/models/aggregation_type.py @@ -16,19 +16,21 @@ from typing_extensions import Self -class QuantificationMeasure(str, Enum): +class AggregationType(str, Enum): """ - QuantificationMeasure + AggregationType """ """ allowed enum values """ - APEX_HEIGHT = 'APEX_HEIGHT' + AVG = 'AVG' + MIN = 'MIN' + MAX = 'MAX' @classmethod def from_json(cls, json_str: str) -> Self: - """Create an instance of QuantificationMeasure from a JSON string""" + """Create an instance of AggregationType from a JSON string""" return cls(json.loads(json_str)) diff --git a/client-api_python/generated/PySirius/models/aligned_feature.py b/client-api_python/generated/PySirius/models/aligned_feature.py index 1af392d8..87bda34a 100644 --- a/client-api_python/generated/PySirius/models/aligned_feature.py +++ b/client-api_python/generated/PySirius/models/aligned_feature.py @@ -21,6 +21,7 @@ from PySirius.models.data_quality import DataQuality from PySirius.models.feature_annotations import FeatureAnnotations from PySirius.models.ms_data import MsData +from PySirius.models.tag import Tag from typing import Optional, Set from typing_extensions import Self @@ -38,15 +39,16 @@ class AlignedFeature(BaseModel): rt_start_seconds: Optional[float] = Field(default=None, alias="rtStartSeconds") rt_end_seconds: Optional[float] = Field(default=None, alias="rtEndSeconds") rt_apex_seconds: Optional[float] = Field(default=None, alias="rtApexSeconds") - quality: Optional[DataQuality] = None + quality: Optional[DataQuality] = Field(default=None, description="Quality of this feature.") has_ms1: Optional[StrictBool] = Field(default=None, description="If true, the feature has at lease one MS1 spectrum", alias="hasMs1") has_ms_ms: Optional[StrictBool] = Field(default=None, description="If true, the feature has at lease one MS/MS spectrum", alias="hasMsMs") - ms_data: Optional[MsData] = Field(default=None, alias="msData") - top_annotations: Optional[FeatureAnnotations] = Field(default=None, alias="topAnnotations") - top_annotations_de_novo: Optional[FeatureAnnotations] = Field(default=None, alias="topAnnotationsDeNovo") + ms_data: Optional[MsData] = Field(default=None, description="Mass Spec data of this feature (input data)", alias="msData") + top_annotations: Optional[FeatureAnnotations] = Field(default=None, description="Top annotations of this feature. If a CSI:FingerID structureAnnotation is available, the FormulaCandidate that corresponds to the structureAnnotation is returned. Otherwise, it's the FormulaCandidate with the highest SiriusScore is returned. CANOPUS Compound classes correspond to the FormulaCandidate no matter how it was selected Null if it was not requested und non-null otherwise.", alias="topAnnotations") + top_annotations_de_novo: Optional[FeatureAnnotations] = Field(default=None, description="Top de novo annotations of this feature. The FormulaCandidate with the highest SiriusScore is returned. MSNovelist structureAnnotation and CANOPUS compoundClasses correspond to the FormulaCandidate. Null if it was not requested und non-null otherwise.", alias="topAnnotationsDeNovo") computing: Optional[StrictBool] = Field(default=None, description="Write lock for this feature. If the feature is locked no write operations are possible. True if any computation is modifying this feature or its results") - computed_tools: Optional[ComputedSubtools] = Field(default=None, alias="computedTools") - __properties: ClassVar[List[str]] = ["alignedFeatureId", "compoundId", "name", "externalFeatureId", "ionMass", "charge", "detectedAdducts", "rtStartSeconds", "rtEndSeconds", "rtApexSeconds", "quality", "hasMs1", "hasMsMs", "msData", "topAnnotations", "topAnnotationsDeNovo", "computing", "computedTools"] + computed_tools: Optional[ComputedSubtools] = Field(default=None, 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.", alias="computedTools") + tags: Optional[Dict[str, Tag]] = Field(default=None, description="Key: tagName, value: tag") + __properties: ClassVar[List[str]] = ["alignedFeatureId", "compoundId", "name", "externalFeatureId", "ionMass", "charge", "detectedAdducts", "rtStartSeconds", "rtEndSeconds", "rtApexSeconds", "quality", "hasMs1", "hasMsMs", "msData", "topAnnotations", "topAnnotationsDeNovo", "computing", "computedTools", "tags"] model_config = ConfigDict( populate_by_name=True, @@ -99,46 +101,13 @@ def to_dict(self) -> Dict[str, Any]: # override the default output from pydantic by calling `to_dict()` of computed_tools if self.computed_tools: _dict['computedTools'] = self.computed_tools.to_dict() - # set to None if rt_start_seconds (nullable) is None - # and model_fields_set contains the field - if self.rt_start_seconds is None and "rt_start_seconds" in self.model_fields_set: - _dict['rtStartSeconds'] = None - - # set to None if rt_end_seconds (nullable) is None - # and model_fields_set contains the field - if self.rt_end_seconds is None and "rt_end_seconds" in self.model_fields_set: - _dict['rtEndSeconds'] = None - - # set to None if rt_apex_seconds (nullable) is None - # and model_fields_set contains the field - if self.rt_apex_seconds is None and "rt_apex_seconds" in self.model_fields_set: - _dict['rtApexSeconds'] = None - - # set to None if quality (nullable) is None - # and model_fields_set contains the field - if self.quality is None and "quality" in self.model_fields_set: - _dict['quality'] = None - - # set to None if ms_data (nullable) is None - # and model_fields_set contains the field - if self.ms_data is None and "ms_data" in self.model_fields_set: - _dict['msData'] = None - - # set to None if top_annotations (nullable) is None - # and model_fields_set contains the field - if self.top_annotations is None and "top_annotations" in self.model_fields_set: - _dict['topAnnotations'] = None - - # set to None if top_annotations_de_novo (nullable) is None - # and model_fields_set contains the field - if self.top_annotations_de_novo is None and "top_annotations_de_novo" in self.model_fields_set: - _dict['topAnnotationsDeNovo'] = None - - # set to None if computed_tools (nullable) is None - # and model_fields_set contains the field - if self.computed_tools is None and "computed_tools" in self.model_fields_set: - _dict['computedTools'] = None - + # override the default output from pydantic by calling `to_dict()` of each value in tags (dict) + _field_dict = {} + if self.tags: + for _key_tags in self.tags: + if self.tags[_key_tags]: + _field_dict[_key_tags] = self.tags[_key_tags].to_dict() + _dict['tags'] = _field_dict return _dict @classmethod @@ -168,7 +137,13 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: "topAnnotations": FeatureAnnotations.from_dict(obj["topAnnotations"]) if obj.get("topAnnotations") is not None else None, "topAnnotationsDeNovo": FeatureAnnotations.from_dict(obj["topAnnotationsDeNovo"]) if obj.get("topAnnotationsDeNovo") is not None else None, "computing": obj.get("computing"), - "computedTools": ComputedSubtools.from_dict(obj["computedTools"]) if obj.get("computedTools") is not None else None + "computedTools": ComputedSubtools.from_dict(obj["computedTools"]) if obj.get("computedTools") is not None else None, + "tags": dict( + (_k, Tag.from_dict(_v)) + for _k, _v in obj["tags"].items() + ) + if obj.get("tags") is not None + else None }) return _obj diff --git a/client-api_python/generated/PySirius/models/aligned_feature_opt_field.py b/client-api_python/generated/PySirius/models/aligned_feature_opt_field.py index 6ea3ef12..3ad839a0 100644 --- a/client-api_python/generated/PySirius/models/aligned_feature_opt_field.py +++ b/client-api_python/generated/PySirius/models/aligned_feature_opt_field.py @@ -26,9 +26,11 @@ class AlignedFeatureOptField(str, Enum): """ NONE = 'none' MSDATA = 'msData' + TOPANNOTATIONSSUMMARY = 'topAnnotationsSummary' TOPANNOTATIONS = 'topAnnotations' TOPANNOTATIONSDENOVO = 'topAnnotationsDeNovo' COMPUTEDTOOLS = 'computedTools' + TAGS = 'tags' @classmethod def from_json(cls, json_str: str) -> Self: diff --git a/client-api_python/generated/PySirius/models/aligned_feature_quality_experimental.py b/client-api_python/generated/PySirius/models/aligned_feature_quality_experimental.py index 39577290..c29201b6 100644 --- a/client-api_python/generated/PySirius/models/aligned_feature_quality_experimental.py +++ b/client-api_python/generated/PySirius/models/aligned_feature_quality_experimental.py @@ -16,7 +16,7 @@ import json from pydantic import BaseModel, ConfigDict, Field, StrictStr -from typing import Any, ClassVar, Dict, List, Optional +from typing import Any, ClassVar, Dict, List from PySirius.models.category import Category from PySirius.models.data_quality import DataQuality from typing import Optional, Set @@ -27,7 +27,7 @@ class AlignedFeatureQualityExperimental(BaseModel): EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable. """ # noqa: E501 aligned_feature_id: StrictStr = Field(description="Id of the feature (aligned over runs) this quality information belongs to.", alias="alignedFeatureId") - overall_quality: Optional[DataQuality] = Field(alias="overallQuality") + overall_quality: DataQuality = Field(description="Overall Quality", alias="overallQuality") categories: Dict[str, Category] = Field(description="Contains all pre-computation quality information that belong to this feature (aligned over runs), such as information about the quality of the peak shape, MS2 spectrum etc.,") __properties: ClassVar[List[str]] = ["alignedFeatureId", "overallQuality", "categories"] @@ -77,11 +77,6 @@ def to_dict(self) -> Dict[str, Any]: if self.categories[_key_categories]: _field_dict[_key_categories] = self.categories[_key_categories].to_dict() _dict['categories'] = _field_dict - # set to None if overall_quality (nullable) is None - # and model_fields_set contains the field - if self.overall_quality is None and "overall_quality" in self.model_fields_set: - _dict['overallQuality'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/allowed_features.py b/client-api_python/generated/PySirius/models/allowed_features.py new file mode 100644 index 00000000..3690dc92 --- /dev/null +++ b/client-api_python/generated/PySirius/models/allowed_features.py @@ -0,0 +1,95 @@ +# 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, StrictBool +from typing import Any, ClassVar, Dict, List, Optional +from typing import Optional, Set +from typing_extensions import Self + +class AllowedFeatures(BaseModel): + """ + AllowedFeatures + """ # noqa: E501 + cli: Optional[StrictBool] = None + api: Optional[StrictBool] = None + de_novo: Optional[StrictBool] = Field(default=None, alias="deNovo") + import_ms_runs: Optional[StrictBool] = Field(default=None, alias="importMSRuns") + import_peak_lists: Optional[StrictBool] = Field(default=None, alias="importPeakLists") + import_cef: Optional[StrictBool] = Field(default=None, alias="importCef") + __properties: ClassVar[List[str]] = ["cli", "api", "deNovo", "importMSRuns", "importPeakLists", "importCef"] + + 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 AllowedFeatures 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 AllowedFeatures from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "cli": obj.get("cli"), + "api": obj.get("api"), + "deNovo": obj.get("deNovo"), + "importMSRuns": obj.get("importMSRuns"), + "importPeakLists": obj.get("importPeakLists"), + "importCef": obj.get("importCef") + }) + return _obj + + diff --git a/client-api_python/generated/PySirius/models/annotated_ms_ms_data.py b/client-api_python/generated/PySirius/models/annotated_ms_ms_data.py index 0b5a6d08..10f6e022 100644 --- a/client-api_python/generated/PySirius/models/annotated_ms_ms_data.py +++ b/client-api_python/generated/PySirius/models/annotated_ms_ms_data.py @@ -16,7 +16,7 @@ import json from pydantic import BaseModel, ConfigDict, Field -from typing import Any, ClassVar, Dict, List, Optional +from typing import Any, ClassVar, Dict, List from PySirius.models.annotated_spectrum import AnnotatedSpectrum from typing import Optional, Set from typing_extensions import Self @@ -25,8 +25,8 @@ class AnnotatedMsMsData(BaseModel): """ AnnotatedMsMsData """ # noqa: E501 - merged_ms2: Optional[AnnotatedSpectrum] = Field(alias="mergedMs2") - ms2_spectra: List[Optional[AnnotatedSpectrum]] = Field(alias="ms2Spectra") + merged_ms2: AnnotatedSpectrum = Field(alias="mergedMs2") + ms2_spectra: List[AnnotatedSpectrum] = Field(alias="ms2Spectra") __properties: ClassVar[List[str]] = ["mergedMs2", "ms2Spectra"] model_config = ConfigDict( @@ -78,11 +78,6 @@ def to_dict(self) -> Dict[str, Any]: if _item_ms2_spectra: _items.append(_item_ms2_spectra.to_dict()) _dict['ms2Spectra'] = _items - # set to None if merged_ms2 (nullable) is None - # and model_fields_set contains the field - if self.merged_ms2 is None and "merged_ms2" in self.model_fields_set: - _dict['mergedMs2'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/annotated_peak.py b/client-api_python/generated/PySirius/models/annotated_peak.py index 991f4654..083c3d08 100644 --- a/client-api_python/generated/PySirius/models/annotated_peak.py +++ b/client-api_python/generated/PySirius/models/annotated_peak.py @@ -72,11 +72,6 @@ def to_dict(self) -> Dict[str, Any]: # override the default output from pydantic by calling `to_dict()` of peak_annotation if self.peak_annotation: _dict['peakAnnotation'] = self.peak_annotation.to_dict() - # set to None if peak_annotation (nullable) is None - # and model_fields_set contains the field - if self.peak_annotation is None and "peak_annotation" in self.model_fields_set: - _dict['peakAnnotation'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/annotated_spectrum.py b/client-api_python/generated/PySirius/models/annotated_spectrum.py index 08aa4647..e810b4ac 100644 --- a/client-api_python/generated/PySirius/models/annotated_spectrum.py +++ b/client-api_python/generated/PySirius/models/annotated_spectrum.py @@ -15,9 +15,10 @@ import re # noqa: F401 import json -from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr +from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr from typing import Any, ClassVar, Dict, List, Optional from PySirius.models.annotated_peak import AnnotatedPeak +from PySirius.models.simple_peak import SimplePeak from PySirius.models.spectrum_annotation import SpectrumAnnotation from typing import Optional, Set from typing_extensions import Self @@ -32,10 +33,16 @@ class AnnotatedSpectrum(BaseModel): instrument: Optional[StrictStr] = Field(default=None, description="Instrument information.") precursor_mz: Optional[float] = Field(default=None, description="Precursor m/z of the MS/MS spectrum Null for spectra where precursor m/z is not applicable", alias="precursorMz") scan_number: Optional[StrictInt] = Field(default=None, description="Scan number of the spectrum. Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)", alias="scanNumber") + cosine_query: StrictBool = Field(description="True if spectrum is in cosine query normalized format. Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.", alias="cosineQuery") + precursor_peak: Optional[SimplePeak] = Field(default=None, description="A separate precursor peak field to either mark the precursor in the peaklist or provide the precursor peak separately from the spectrum in case the spectrum is in a preprocessed form where the precursor peak has been removed for library matching. NULL if the spectrum does not contain the precursor peak.", alias="precursorPeak") peaks: List[AnnotatedPeak] = Field(description="The peaks of this spectrum which might contain additional annotations such as molecular formulas.") - abs_intensity_factor: Optional[float] = Field(default=None, description="Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)", alias="absIntensityFactor") - spectrum_annotation: Optional[SpectrumAnnotation] = Field(default=None, alias="spectrumAnnotation") - __properties: ClassVar[List[str]] = ["name", "msLevel", "collisionEnergy", "instrument", "precursorMz", "scanNumber", "peaks", "absIntensityFactor", "spectrumAnnotation"] + abs_intensity_factor: Optional[float] = Field(default=None, description="Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)
DEPRECATED: Spectra are always returned with raw intensities. Use provided normalization factors to normalize on the fly.", alias="absIntensityFactor") + max_norm_factor: Optional[float] = Field(default=None, description="Factor to convert absolute intensities to MAX norm.", alias="maxNormFactor") + sum_norm_factor: Optional[float] = Field(default=None, description="Factor to convert absolute intensities to SUM norm.", alias="sumNormFactor") + l2_norm_factor: Optional[float] = Field(default=None, description="Factor to convert absolute intensities to L2 (Euclidean) norm.", alias="l2NormFactor") + first_peak_norm_factor: Optional[float] = Field(default=None, description="Factor to convert absolute intensities to normalize intensities by first peak intensity.", alias="firstPeakNormFactor") + spectrum_annotation: Optional[SpectrumAnnotation] = Field(default=None, description="Optional Annotations of this spectrum.", alias="spectrumAnnotation") + __properties: ClassVar[List[str]] = ["name", "msLevel", "collisionEnergy", "instrument", "precursorMz", "scanNumber", "cosineQuery", "precursorPeak", "peaks", "absIntensityFactor", "maxNormFactor", "sumNormFactor", "l2NormFactor", "firstPeakNormFactor", "spectrumAnnotation"] model_config = ConfigDict( populate_by_name=True, @@ -76,6 +83,9 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) + # override the default output from pydantic by calling `to_dict()` of precursor_peak + if self.precursor_peak: + _dict['precursorPeak'] = self.precursor_peak.to_dict() # override the default output from pydantic by calling `to_dict()` of each item in peaks (list) _items = [] if self.peaks: @@ -86,46 +96,6 @@ def to_dict(self) -> Dict[str, Any]: # override the default output from pydantic by calling `to_dict()` of spectrum_annotation if self.spectrum_annotation: _dict['spectrumAnnotation'] = self.spectrum_annotation.to_dict() - # set to None if name (nullable) is None - # and model_fields_set contains the field - if self.name is None and "name" in self.model_fields_set: - _dict['name'] = None - - # set to None if ms_level (nullable) is None - # and model_fields_set contains the field - if self.ms_level is None and "ms_level" in self.model_fields_set: - _dict['msLevel'] = None - - # set to None if collision_energy (nullable) is None - # and model_fields_set contains the field - if self.collision_energy is None and "collision_energy" in self.model_fields_set: - _dict['collisionEnergy'] = None - - # set to None if instrument (nullable) is None - # and model_fields_set contains the field - if self.instrument is None and "instrument" in self.model_fields_set: - _dict['instrument'] = None - - # set to None if precursor_mz (nullable) is None - # and model_fields_set contains the field - if self.precursor_mz is None and "precursor_mz" in self.model_fields_set: - _dict['precursorMz'] = None - - # set to None if scan_number (nullable) is None - # and model_fields_set contains the field - if self.scan_number is None and "scan_number" in self.model_fields_set: - _dict['scanNumber'] = None - - # set to None if abs_intensity_factor (nullable) is None - # and model_fields_set contains the field - if self.abs_intensity_factor is None and "abs_intensity_factor" in self.model_fields_set: - _dict['absIntensityFactor'] = None - - # set to None if spectrum_annotation (nullable) is None - # and model_fields_set contains the field - if self.spectrum_annotation is None and "spectrum_annotation" in self.model_fields_set: - _dict['spectrumAnnotation'] = None - return _dict @classmethod @@ -144,8 +114,14 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: "instrument": obj.get("instrument"), "precursorMz": obj.get("precursorMz"), "scanNumber": obj.get("scanNumber"), + "cosineQuery": obj.get("cosineQuery") if obj.get("cosineQuery") is not None else False, + "precursorPeak": SimplePeak.from_dict(obj["precursorPeak"]) if obj.get("precursorPeak") is not None else None, "peaks": [AnnotatedPeak.from_dict(_item) for _item in obj["peaks"]] if obj.get("peaks") is not None else None, "absIntensityFactor": obj.get("absIntensityFactor"), + "maxNormFactor": obj.get("maxNormFactor"), + "sumNormFactor": obj.get("sumNormFactor"), + "l2NormFactor": obj.get("l2NormFactor"), + "firstPeakNormFactor": obj.get("firstPeakNormFactor"), "spectrumAnnotation": SpectrumAnnotation.from_dict(obj["spectrumAnnotation"]) if obj.get("spectrumAnnotation") is not None else None }) return _obj diff --git a/client-api_python/generated/PySirius/models/quantification_column_type.py b/client-api_python/generated/PySirius/models/api_version.py similarity index 71% rename from client-api_python/generated/PySirius/models/quantification_column_type.py rename to client-api_python/generated/PySirius/models/api_version.py index ad423db3..a84673dd 100644 --- a/client-api_python/generated/PySirius/models/quantification_column_type.py +++ b/client-api_python/generated/PySirius/models/api_version.py @@ -16,19 +16,20 @@ from typing_extensions import Self -class QuantificationColumnType(str, Enum): +class ApiVersion(str, Enum): """ - QuantificationColumnType + ApiVersion """ """ allowed enum values """ - SAMPLES = 'SAMPLES' + V2 = 'V2' + V3 = 'V3' @classmethod def from_json(cls, json_str: str) -> Self: - """Create an instance of QuantificationColumnType from a JSON string""" + """Create an instance of ApiVersion from a JSON string""" return cls(json.loads(json_str)) diff --git a/client-api_python/generated/PySirius/models/basic_spectrum.py b/client-api_python/generated/PySirius/models/basic_spectrum.py index 55c6f9d5..af42dfca 100644 --- a/client-api_python/generated/PySirius/models/basic_spectrum.py +++ b/client-api_python/generated/PySirius/models/basic_spectrum.py @@ -15,7 +15,7 @@ import re # noqa: F401 import json -from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr +from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr from typing import Any, ClassVar, Dict, List, Optional from PySirius.models.simple_peak import SimplePeak from typing import Optional, Set @@ -31,9 +31,15 @@ class BasicSpectrum(BaseModel): instrument: Optional[StrictStr] = Field(default=None, description="Instrument information.") precursor_mz: Optional[float] = Field(default=None, description="Precursor m/z of the MS/MS spectrum Null for spectra where precursor m/z is not applicable", alias="precursorMz") scan_number: Optional[StrictInt] = Field(default=None, description="Scan number of the spectrum. Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)", alias="scanNumber") + cosine_query: StrictBool = Field(description="True if spectrum is in cosine query normalized format. Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.", alias="cosineQuery") + precursor_peak: Optional[SimplePeak] = Field(default=None, description="A separate precursor peak field to either mark the precursor in the peaklist or provide the precursor peak separately from the spectrum in case the spectrum is in a preprocessed form where the precursor peak has been removed for library matching. NULL if the spectrum does not contain the precursor peak.", alias="precursorPeak") peaks: List[SimplePeak] = Field(description="The peaks of this spectrum which might contain additional annotations such as molecular formulas.") - abs_intensity_factor: Optional[float] = Field(default=None, description="Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)", alias="absIntensityFactor") - __properties: ClassVar[List[str]] = ["name", "msLevel", "collisionEnergy", "instrument", "precursorMz", "scanNumber", "peaks", "absIntensityFactor"] + abs_intensity_factor: Optional[float] = Field(default=None, description="Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)
DEPRECATED: Spectra are always returned with raw intensities. Use provided normalization factors to normalize on the fly.", alias="absIntensityFactor") + max_norm_factor: Optional[float] = Field(default=None, description="Factor to convert absolute intensities to MAX norm.", alias="maxNormFactor") + sum_norm_factor: Optional[float] = Field(default=None, description="Factor to convert absolute intensities to SUM norm.", alias="sumNormFactor") + l2_norm_factor: Optional[float] = Field(default=None, description="Factor to convert absolute intensities to L2 (Euclidean) norm.", alias="l2NormFactor") + first_peak_norm_factor: Optional[float] = Field(default=None, description="Factor to convert absolute intensities to normalize intensities by first peak intensity.", alias="firstPeakNormFactor") + __properties: ClassVar[List[str]] = ["name", "msLevel", "collisionEnergy", "instrument", "precursorMz", "scanNumber", "cosineQuery", "precursorPeak", "peaks", "absIntensityFactor", "maxNormFactor", "sumNormFactor", "l2NormFactor", "firstPeakNormFactor"] model_config = ConfigDict( populate_by_name=True, @@ -74,6 +80,9 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) + # override the default output from pydantic by calling `to_dict()` of precursor_peak + if self.precursor_peak: + _dict['precursorPeak'] = self.precursor_peak.to_dict() # override the default output from pydantic by calling `to_dict()` of each item in peaks (list) _items = [] if self.peaks: @@ -81,41 +90,6 @@ def to_dict(self) -> Dict[str, Any]: if _item_peaks: _items.append(_item_peaks.to_dict()) _dict['peaks'] = _items - # set to None if name (nullable) is None - # and model_fields_set contains the field - if self.name is None and "name" in self.model_fields_set: - _dict['name'] = None - - # set to None if ms_level (nullable) is None - # and model_fields_set contains the field - if self.ms_level is None and "ms_level" in self.model_fields_set: - _dict['msLevel'] = None - - # set to None if collision_energy (nullable) is None - # and model_fields_set contains the field - if self.collision_energy is None and "collision_energy" in self.model_fields_set: - _dict['collisionEnergy'] = None - - # set to None if instrument (nullable) is None - # and model_fields_set contains the field - if self.instrument is None and "instrument" in self.model_fields_set: - _dict['instrument'] = None - - # set to None if precursor_mz (nullable) is None - # and model_fields_set contains the field - if self.precursor_mz is None and "precursor_mz" in self.model_fields_set: - _dict['precursorMz'] = None - - # set to None if scan_number (nullable) is None - # and model_fields_set contains the field - if self.scan_number is None and "scan_number" in self.model_fields_set: - _dict['scanNumber'] = None - - # set to None if abs_intensity_factor (nullable) is None - # and model_fields_set contains the field - if self.abs_intensity_factor is None and "abs_intensity_factor" in self.model_fields_set: - _dict['absIntensityFactor'] = None - return _dict @classmethod @@ -134,8 +108,14 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: "instrument": obj.get("instrument"), "precursorMz": obj.get("precursorMz"), "scanNumber": obj.get("scanNumber"), + "cosineQuery": obj.get("cosineQuery") if obj.get("cosineQuery") is not None else False, + "precursorPeak": SimplePeak.from_dict(obj["precursorPeak"]) if obj.get("precursorPeak") is not None else None, "peaks": [SimplePeak.from_dict(_item) for _item in obj["peaks"]] if obj.get("peaks") is not None else None, - "absIntensityFactor": obj.get("absIntensityFactor") + "absIntensityFactor": obj.get("absIntensityFactor"), + "maxNormFactor": obj.get("maxNormFactor"), + "sumNormFactor": obj.get("sumNormFactor"), + "l2NormFactor": obj.get("l2NormFactor"), + "firstPeakNormFactor": obj.get("firstPeakNormFactor") }) return _obj diff --git a/client-api_python/generated/PySirius/models/bio_transformer_parameters.py b/client-api_python/generated/PySirius/models/bio_transformer_parameters.py new file mode 100644 index 00000000..f8bbcfcd --- /dev/null +++ b/client-api_python/generated/PySirius/models/bio_transformer_parameters.py @@ -0,0 +1,101 @@ +# 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, StrictBool +from typing import Any, ClassVar, Dict, List, Optional +from PySirius.models.bio_transformer_sequence_step import BioTransformerSequenceStep +from PySirius.models.cyp450_mode import Cyp450Mode +from PySirius.models.p2_mode import P2Mode +from typing import Optional, Set +from typing_extensions import Self + +class BioTransformerParameters(BaseModel): + """ + BioTransformerParameters + """ # noqa: E501 + cyp450_mode: Cyp450Mode = Field(description="Specify the Phase I/Cyp450 mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that require the Cyp450 mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified that do not need the Cyp450 mode.", alias="cyp450Mode") + p2_mode: P2Mode = Field(description="Specify the Phase II mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that require the Phase II mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified that do not need the Phase II mode.", alias="p2Mode") + use_db: Optional[StrictBool] = Field(default=True, description="\"Specify if you want to enable the retrieving from database (HMDB) feature.\"", alias="useDB") + bio_transformer_sequence_steps: List[BioTransformerSequenceStep] = Field(description="Specify BioTransformerSequenceSteps to be applied to input structures. MultiStep MetabolicTransformations can only be used as singletons (list size of one).", alias="bioTransformerSequenceSteps") + __properties: ClassVar[List[str]] = ["cyp450Mode", "p2Mode", "useDB", "bioTransformerSequenceSteps"] + + 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 BioTransformerParameters 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, + ) + # override the default output from pydantic by calling `to_dict()` of each item in bio_transformer_sequence_steps (list) + _items = [] + if self.bio_transformer_sequence_steps: + for _item_bio_transformer_sequence_steps in self.bio_transformer_sequence_steps: + if _item_bio_transformer_sequence_steps: + _items.append(_item_bio_transformer_sequence_steps.to_dict()) + _dict['bioTransformerSequenceSteps'] = _items + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of BioTransformerParameters from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "cyp450Mode": obj.get("cyp450Mode"), + "p2Mode": obj.get("p2Mode"), + "useDB": obj.get("useDB") if obj.get("useDB") is not None else True, + "bioTransformerSequenceSteps": [BioTransformerSequenceStep.from_dict(_item) for _item in obj["bioTransformerSequenceSteps"]] if obj.get("bioTransformerSequenceSteps") is not None else None + }) + return _obj + + diff --git a/client-api_python/generated/PySirius/models/bio_transformer_sequence_step.py b/client-api_python/generated/PySirius/models/bio_transformer_sequence_step.py new file mode 100644 index 00000000..45d5dbc2 --- /dev/null +++ b/client-api_python/generated/PySirius/models/bio_transformer_sequence_step.py @@ -0,0 +1,88 @@ +# 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, StrictInt +from typing import Any, ClassVar, Dict, List, Optional +from PySirius.models.metabolic_transformation import MetabolicTransformation +from typing import Optional, Set +from typing_extensions import Self + +class BioTransformerSequenceStep(BaseModel): + """ + BioTransformerSequenceStep + """ # noqa: E501 + metabolic_transformation: Optional[MetabolicTransformation] = Field(default=None, alias="metabolicTransformation") + iterations: Optional[StrictInt] = None + __properties: ClassVar[List[str]] = ["metabolicTransformation", "iterations"] + + 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 BioTransformerSequenceStep 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 BioTransformerSequenceStep from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "metabolicTransformation": obj.get("metabolicTransformation"), + "iterations": obj.get("iterations") + }) + return _obj + + diff --git a/client-api_python/generated/PySirius/models/canopus_prediction.py b/client-api_python/generated/PySirius/models/canopus_prediction.py index 7d4ad3ba..2586e26d 100644 --- a/client-api_python/generated/PySirius/models/canopus_prediction.py +++ b/client-api_python/generated/PySirius/models/canopus_prediction.py @@ -25,8 +25,8 @@ class CanopusPrediction(BaseModel): """ Container class that holds the CANOPUS compound class predictions for alle predictable compound classes. This is the full CANOPUS result. """ # noqa: E501 - classy_fire_classes: Optional[List[Optional[CompoundClass]]] = Field(default=None, description="All predicted ClassyFire classes", alias="classyFireClasses") - npc_classes: Optional[List[Optional[CompoundClass]]] = Field(default=None, description="All predicted NPC classes", alias="npcClasses") + classy_fire_classes: Optional[List[CompoundClass]] = Field(default=None, description="All predicted ClassyFire classes", alias="classyFireClasses") + npc_classes: Optional[List[CompoundClass]] = Field(default=None, description="All predicted NPC classes", alias="npcClasses") __properties: ClassVar[List[str]] = ["classyFireClasses", "npcClasses"] model_config = ConfigDict( @@ -82,16 +82,6 @@ def to_dict(self) -> Dict[str, Any]: if _item_npc_classes: _items.append(_item_npc_classes.to_dict()) _dict['npcClasses'] = _items - # set to None if classy_fire_classes (nullable) is None - # and model_fields_set contains the field - if self.classy_fire_classes is None and "classy_fire_classes" in self.model_fields_set: - _dict['classyFireClasses'] = None - - # set to None if npc_classes (nullable) is None - # and model_fields_set contains the field - if self.npc_classes is None and "npc_classes" in self.model_fields_set: - _dict['npcClasses'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/category.py b/client-api_python/generated/PySirius/models/category.py index 919bc6e9..90150241 100644 --- a/client-api_python/generated/PySirius/models/category.py +++ b/client-api_python/generated/PySirius/models/category.py @@ -77,11 +77,6 @@ def to_dict(self) -> Dict[str, Any]: if _item_items: _items.append(_item_items.to_dict()) _dict['items'] = _items - # set to None if overall_quality (nullable) is None - # and model_fields_set contains the field - if self.overall_quality is None and "overall_quality" in self.model_fields_set: - _dict['overallQuality'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/compound.py b/client-api_python/generated/PySirius/models/compound.py index 3f2cebc0..031c07e0 100644 --- a/client-api_python/generated/PySirius/models/compound.py +++ b/client-api_python/generated/PySirius/models/compound.py @@ -20,6 +20,7 @@ from PySirius.models.aligned_feature import AlignedFeature from PySirius.models.consensus_annotations_csi import ConsensusAnnotationsCSI from PySirius.models.consensus_annotations_de_novo import ConsensusAnnotationsDeNovo +from PySirius.models.tag import Tag from typing import Optional, Set from typing_extensions import Self @@ -33,10 +34,11 @@ class Compound(BaseModel): rt_end_seconds: Optional[float] = Field(default=None, description="The merged/consensus retention time end (latest rt) of this compound", alias="rtEndSeconds") neutral_mass: Optional[float] = Field(default=None, description="Neutral mass of this compound. Ion masse minus the mass of the assigned adduct of each feature of this compound should result in the same neutral mass", alias="neutralMass") features: Optional[List[AlignedFeature]] = Field(default=None, description="List of aligned features (adducts) that belong to the same (this) compound") - consensus_annotations: Optional[ConsensusAnnotationsCSI] = Field(default=None, alias="consensusAnnotations") - consensus_annotations_de_novo: Optional[ConsensusAnnotationsDeNovo] = Field(default=None, alias="consensusAnnotationsDeNovo") - custom_annotations: Optional[ConsensusAnnotationsCSI] = Field(default=None, alias="customAnnotations") - __properties: ClassVar[List[str]] = ["compoundId", "name", "rtStartSeconds", "rtEndSeconds", "neutralMass", "features", "consensusAnnotations", "consensusAnnotationsDeNovo", "customAnnotations"] + consensus_annotations: Optional[ConsensusAnnotationsCSI] = Field(default=None, description="The consensus of the top annotations from all the features of this compound. Null if it was not requested und non-null otherwise. Might contain empty fields if results are not available", alias="consensusAnnotations") + consensus_annotations_de_novo: Optional[ConsensusAnnotationsDeNovo] = Field(default=None, description="The consensus of the top de novo annotations from all the features of this compound. Null if it was not requested und non-null otherwise. Might contain empty fields if results are not available", alias="consensusAnnotationsDeNovo") + custom_annotations: Optional[ConsensusAnnotationsCSI] = Field(default=None, description="Alternative annotations selected by the User.", alias="customAnnotations") + tags: Optional[Dict[str, Tag]] = Field(default=None, description="Key: tagName, value: tag") + __properties: ClassVar[List[str]] = ["compoundId", "name", "rtStartSeconds", "rtEndSeconds", "neutralMass", "features", "consensusAnnotations", "consensusAnnotationsDeNovo", "customAnnotations", "tags"] model_config = ConfigDict( populate_by_name=True, @@ -93,41 +95,13 @@ def to_dict(self) -> Dict[str, Any]: # override the default output from pydantic by calling `to_dict()` of custom_annotations if self.custom_annotations: _dict['customAnnotations'] = self.custom_annotations.to_dict() - # set to None if name (nullable) is None - # and model_fields_set contains the field - if self.name is None and "name" in self.model_fields_set: - _dict['name'] = None - - # set to None if rt_start_seconds (nullable) is None - # and model_fields_set contains the field - if self.rt_start_seconds is None and "rt_start_seconds" in self.model_fields_set: - _dict['rtStartSeconds'] = None - - # set to None if rt_end_seconds (nullable) is None - # and model_fields_set contains the field - if self.rt_end_seconds is None and "rt_end_seconds" in self.model_fields_set: - _dict['rtEndSeconds'] = None - - # set to None if neutral_mass (nullable) is None - # and model_fields_set contains the field - if self.neutral_mass is None and "neutral_mass" in self.model_fields_set: - _dict['neutralMass'] = None - - # set to None if consensus_annotations (nullable) is None - # and model_fields_set contains the field - if self.consensus_annotations is None and "consensus_annotations" in self.model_fields_set: - _dict['consensusAnnotations'] = None - - # set to None if consensus_annotations_de_novo (nullable) is None - # and model_fields_set contains the field - if self.consensus_annotations_de_novo is None and "consensus_annotations_de_novo" in self.model_fields_set: - _dict['consensusAnnotationsDeNovo'] = None - - # set to None if custom_annotations (nullable) is None - # and model_fields_set contains the field - if self.custom_annotations is None and "custom_annotations" in self.model_fields_set: - _dict['customAnnotations'] = None - + # override the default output from pydantic by calling `to_dict()` of each value in tags (dict) + _field_dict = {} + if self.tags: + for _key_tags in self.tags: + if self.tags[_key_tags]: + _field_dict[_key_tags] = self.tags[_key_tags].to_dict() + _dict['tags'] = _field_dict return _dict @classmethod @@ -148,7 +122,13 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: "features": [AlignedFeature.from_dict(_item) for _item in obj["features"]] if obj.get("features") is not None else None, "consensusAnnotations": ConsensusAnnotationsCSI.from_dict(obj["consensusAnnotations"]) if obj.get("consensusAnnotations") is not None else None, "consensusAnnotationsDeNovo": ConsensusAnnotationsDeNovo.from_dict(obj["consensusAnnotationsDeNovo"]) if obj.get("consensusAnnotationsDeNovo") is not None else None, - "customAnnotations": ConsensusAnnotationsCSI.from_dict(obj["customAnnotations"]) if obj.get("customAnnotations") is not None else None + "customAnnotations": ConsensusAnnotationsCSI.from_dict(obj["customAnnotations"]) if obj.get("customAnnotations") is not None else None, + "tags": dict( + (_k, Tag.from_dict(_v)) + for _k, _v in obj["tags"].items() + ) + if obj.get("tags") is not None + else None }) return _obj diff --git a/client-api_python/generated/PySirius/models/compound_class.py b/client-api_python/generated/PySirius/models/compound_class.py index 6a3d3ef0..55b74082 100644 --- a/client-api_python/generated/PySirius/models/compound_class.py +++ b/client-api_python/generated/PySirius/models/compound_class.py @@ -25,7 +25,7 @@ class CompoundClass(BaseModel): """ Predicted compound class with name, probability and id if available. (ClassyFire and NPC). This can be seen as the set of classes a feature most likely belongs to """ # noqa: E501 - type: Optional[CompoundClassType] = None + type: Optional[CompoundClassType] = Field(default=None, description="Specifies the classification ontology the CompoundClass belongs to.") level: Optional[StrictStr] = Field(default=None, description="Name of the level this compound class belongs to") level_index: Optional[StrictInt] = Field(default=None, description="Index of the level this compound class belongs to", alias="levelIndex") name: Optional[StrictStr] = Field(default=None, description="Name of the compound class.") @@ -76,46 +76,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if type (nullable) is None - # and model_fields_set contains the field - if self.type is None and "type" in self.model_fields_set: - _dict['type'] = None - - # set to None if level (nullable) is None - # and model_fields_set contains the field - if self.level is None and "level" in self.model_fields_set: - _dict['level'] = None - - # set to None if level_index (nullable) is None - # and model_fields_set contains the field - if self.level_index is None and "level_index" in self.model_fields_set: - _dict['levelIndex'] = None - - # set to None if name (nullable) is None - # and model_fields_set contains the field - if self.name is None and "name" in self.model_fields_set: - _dict['name'] = None - - # set to None if description (nullable) is None - # and model_fields_set contains the field - if self.description is None and "description" in self.model_fields_set: - _dict['description'] = None - - # set to None if id (nullable) is None - # and model_fields_set contains the field - if self.id is None and "id" in self.model_fields_set: - _dict['id'] = None - - # set to None if parent_id (nullable) is None - # and model_fields_set contains the field - if self.parent_id is None and "parent_id" in self.model_fields_set: - _dict['parentId'] = None - - # set to None if parent_name (nullable) is None - # and model_fields_set contains the field - if self.parent_name is None and "parent_name" in self.model_fields_set: - _dict['parentName'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/compound_classes.py b/client-api_python/generated/PySirius/models/compound_classes.py index c6077a43..a0885a8e 100644 --- a/client-api_python/generated/PySirius/models/compound_classes.py +++ b/client-api_python/generated/PySirius/models/compound_classes.py @@ -25,11 +25,11 @@ class CompoundClasses(BaseModel): """ Container class that holds the most likely compound class for different levels of each ontology for a certain Compound/Feature/FormulaCandidate/PredictedFingerprint. """ # noqa: E501 - npc_pathway: Optional[CompoundClass] = Field(default=None, alias="npcPathway") - npc_superclass: Optional[CompoundClass] = Field(default=None, alias="npcSuperclass") - npc_class: Optional[CompoundClass] = Field(default=None, alias="npcClass") - classy_fire_lineage: Optional[List[Optional[CompoundClass]]] = Field(default=None, description="Most likely ClassyFire lineage from ordered from least specific to most specific class classyFireLineage.get(classyFireLineage.size() - 1) gives the most specific ClassyFire compound class annotation", alias="classyFireLineage") - classy_fire_alternatives: Optional[List[Optional[CompoundClass]]] = Field(default=None, description="Alternative ClassyFire classes with high probability that do not fit into the linage", alias="classyFireAlternatives") + npc_pathway: Optional[CompoundClass] = Field(default=None, description="Pathway level NPC class with the highest probability", alias="npcPathway") + npc_superclass: Optional[CompoundClass] = Field(default=None, description="Superclass level NPC class with the highest probability", alias="npcSuperclass") + npc_class: Optional[CompoundClass] = Field(default=None, description="Class level NPC class with the highest probability", alias="npcClass") + classy_fire_lineage: Optional[List[CompoundClass]] = Field(default=None, description="Most likely ClassyFire lineage from ordered from least specific to most specific class classyFireLineage.get(classyFireLineage.size() - 1) gives the most specific ClassyFire compound class annotation", alias="classyFireLineage") + classy_fire_alternatives: Optional[List[CompoundClass]] = Field(default=None, description="Alternative ClassyFire classes with high probability that do not fit into the linage", alias="classyFireAlternatives") __properties: ClassVar[List[str]] = ["npcPathway", "npcSuperclass", "npcClass", "classyFireLineage", "classyFireAlternatives"] model_config = ConfigDict( @@ -94,31 +94,6 @@ def to_dict(self) -> Dict[str, Any]: if _item_classy_fire_alternatives: _items.append(_item_classy_fire_alternatives.to_dict()) _dict['classyFireAlternatives'] = _items - # set to None if npc_pathway (nullable) is None - # and model_fields_set contains the field - if self.npc_pathway is None and "npc_pathway" in self.model_fields_set: - _dict['npcPathway'] = None - - # set to None if npc_superclass (nullable) is None - # and model_fields_set contains the field - if self.npc_superclass is None and "npc_superclass" in self.model_fields_set: - _dict['npcSuperclass'] = None - - # set to None if npc_class (nullable) is None - # and model_fields_set contains the field - if self.npc_class is None and "npc_class" in self.model_fields_set: - _dict['npcClass'] = None - - # set to None if classy_fire_lineage (nullable) is None - # and model_fields_set contains the field - if self.classy_fire_lineage is None and "classy_fire_lineage" in self.model_fields_set: - _dict['classyFireLineage'] = None - - # set to None if classy_fire_alternatives (nullable) is None - # and model_fields_set contains the field - if self.classy_fire_alternatives is None and "classy_fire_alternatives" in self.model_fields_set: - _dict['classyFireAlternatives'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/compound_import.py b/client-api_python/generated/PySirius/models/compound_import.py index 666b2c97..a79258f2 100644 --- a/client-api_python/generated/PySirius/models/compound_import.py +++ b/client-api_python/generated/PySirius/models/compound_import.py @@ -75,11 +75,6 @@ def to_dict(self) -> Dict[str, Any]: if _item_features: _items.append(_item_features.to_dict()) _dict['features'] = _items - # set to None if name (nullable) is None - # and model_fields_set contains the field - if self.name is None and "name" in self.model_fields_set: - _dict['name'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/compound_opt_field.py b/client-api_python/generated/PySirius/models/compound_opt_field.py index a07f1cf6..2175be69 100644 --- a/client-api_python/generated/PySirius/models/compound_opt_field.py +++ b/client-api_python/generated/PySirius/models/compound_opt_field.py @@ -28,6 +28,7 @@ class CompoundOptField(str, Enum): CONSENSUSANNOTATIONS = 'consensusAnnotations' CONSENSUSANNOTATIONSDENOVO = 'consensusAnnotationsDeNovo' CUSTOMANNOTATIONS = 'customAnnotations' + TAGS = 'tags' @classmethod def from_json(cls, json_str: str) -> Self: diff --git a/client-api_python/generated/PySirius/models/computed_subtools.py b/client-api_python/generated/PySirius/models/computed_subtools.py index 882a8938..9172c93d 100644 --- a/client-api_python/generated/PySirius/models/computed_subtools.py +++ b/client-api_python/generated/PySirius/models/computed_subtools.py @@ -22,7 +22,7 @@ class ComputedSubtools(BaseModel): """ - 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. + ComputedSubtools """ # noqa: E501 library_search: Optional[StrictBool] = Field(default=None, alias="librarySearch") formula_search: Optional[StrictBool] = Field(default=None, alias="formulaSearch") diff --git a/client-api_python/generated/PySirius/models/connection_error.py b/client-api_python/generated/PySirius/models/connection_error.py index 99d91dd2..66d3709b 100644 --- a/client-api_python/generated/PySirius/models/connection_error.py +++ b/client-api_python/generated/PySirius/models/connection_error.py @@ -75,16 +75,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if server_response_error_code (nullable) is None - # and model_fields_set contains the field - if self.server_response_error_code is None and "server_response_error_code" in self.model_fields_set: - _dict['serverResponseErrorCode'] = None - - # set to None if server_response_error_message (nullable) is None - # and model_fields_set contains the field - if self.server_response_error_message is None and "server_response_error_message" in self.model_fields_set: - _dict['serverResponseErrorMessage'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/consensus_annotations_csi.py b/client-api_python/generated/PySirius/models/consensus_annotations_csi.py index 569ec649..01e2ed51 100644 --- a/client-api_python/generated/PySirius/models/consensus_annotations_csi.py +++ b/client-api_python/generated/PySirius/models/consensus_annotations_csi.py @@ -28,10 +28,10 @@ class ConsensusAnnotationsCSI(BaseModel): ConsensusAnnotationsCSI """ # noqa: E501 molecular_formula: Optional[StrictStr] = Field(default=None, description="Molecular formula of the consensus annotation Might be null if no consensus formula is available.", alias="molecularFormula") - compound_classes: Optional[CompoundClasses] = Field(default=None, alias="compoundClasses") - supporting_feature_ids: Optional[List[Optional[StrictStr]]] = Field(default=None, description="FeatureIds where the topAnnotation supports this annotation.", alias="supportingFeatureIds") - selection_criterion: Optional[ConsensusCriterionCSI] = Field(default=None, alias="selectionCriterion") - csi_finger_id_structure: Optional[StructureCandidate] = Field(default=None, alias="csiFingerIdStructure") + compound_classes: Optional[CompoundClasses] = Field(default=None, description="Compound classes (predicted with CANOPUS) corresponding to the molecularFormula Might be null if no fingerprints or compound classes are available.", alias="compoundClasses") + supporting_feature_ids: Optional[List[StrictStr]] = Field(default=None, description="FeatureIds where the topAnnotation supports this annotation.", alias="supportingFeatureIds") + selection_criterion: Optional[ConsensusCriterionCSI] = Field(default=None, description="Null if this is a custom selection", alias="selectionCriterion") + csi_finger_id_structure: Optional[StructureCandidate] = Field(default=None, description="Database structure candidate (searched with CSI:FingerID), that also defines the molecularFormula Might be null if no consensus structure is available.", alias="csiFingerIdStructure") confidence_exact_match: Optional[float] = Field(default=None, description="Confidence value that represents the certainty that reported consensus structure is exactly the measured one If multiple features support this consensus structure the maximum confidence is reported", alias="confidenceExactMatch") confidence_approx_match: Optional[float] = Field(default=None, description="Confidence value that represents the certainty that the exact consensus structure or a very similar structure (e.g. measured by Maximum Common Edge Subgraph Distance) is the measured one. If multiple features support this consensus structure the maximum confidence is reported", alias="confidenceApproxMatch") __properties: ClassVar[List[str]] = ["molecularFormula", "compoundClasses", "supportingFeatureIds", "selectionCriterion", "csiFingerIdStructure", "confidenceExactMatch", "confidenceApproxMatch"] @@ -81,41 +81,6 @@ def to_dict(self) -> Dict[str, Any]: # override the default output from pydantic by calling `to_dict()` of csi_finger_id_structure if self.csi_finger_id_structure: _dict['csiFingerIdStructure'] = self.csi_finger_id_structure.to_dict() - # set to None if molecular_formula (nullable) is None - # and model_fields_set contains the field - if self.molecular_formula is None and "molecular_formula" in self.model_fields_set: - _dict['molecularFormula'] = None - - # set to None if compound_classes (nullable) is None - # and model_fields_set contains the field - if self.compound_classes is None and "compound_classes" in self.model_fields_set: - _dict['compoundClasses'] = None - - # set to None if supporting_feature_ids (nullable) is None - # and model_fields_set contains the field - if self.supporting_feature_ids is None and "supporting_feature_ids" in self.model_fields_set: - _dict['supportingFeatureIds'] = None - - # set to None if selection_criterion (nullable) is None - # and model_fields_set contains the field - if self.selection_criterion is None and "selection_criterion" in self.model_fields_set: - _dict['selectionCriterion'] = None - - # set to None if csi_finger_id_structure (nullable) is None - # and model_fields_set contains the field - if self.csi_finger_id_structure is None and "csi_finger_id_structure" in self.model_fields_set: - _dict['csiFingerIdStructure'] = None - - # set to None if confidence_exact_match (nullable) is None - # and model_fields_set contains the field - if self.confidence_exact_match is None and "confidence_exact_match" in self.model_fields_set: - _dict['confidenceExactMatch'] = None - - # set to None if confidence_approx_match (nullable) is None - # and model_fields_set contains the field - if self.confidence_approx_match is None and "confidence_approx_match" in self.model_fields_set: - _dict['confidenceApproxMatch'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/consensus_annotations_de_novo.py b/client-api_python/generated/PySirius/models/consensus_annotations_de_novo.py index 02aeaeb8..435f6f6d 100644 --- a/client-api_python/generated/PySirius/models/consensus_annotations_de_novo.py +++ b/client-api_python/generated/PySirius/models/consensus_annotations_de_novo.py @@ -27,9 +27,9 @@ class ConsensusAnnotationsDeNovo(BaseModel): ConsensusAnnotationsDeNovo """ # noqa: E501 molecular_formula: Optional[StrictStr] = Field(default=None, description="Molecular formula of the consensus annotation Might be null if no consensus formula is available.", alias="molecularFormula") - compound_classes: Optional[CompoundClasses] = Field(default=None, alias="compoundClasses") - supporting_feature_ids: Optional[List[Optional[StrictStr]]] = Field(default=None, description="FeatureIds where the topAnnotation supports this annotation.", alias="supportingFeatureIds") - selection_criterion: Optional[ConsensusCriterionDeNovo] = Field(default=None, alias="selectionCriterion") + compound_classes: Optional[CompoundClasses] = Field(default=None, description="Compound classes (predicted with CANOPUS) corresponding to the molecularFormula Might be null if no fingerprints or compound classes are available.", alias="compoundClasses") + supporting_feature_ids: Optional[List[StrictStr]] = Field(default=None, description="FeatureIds where the topAnnotation supports this annotation.", alias="supportingFeatureIds") + selection_criterion: Optional[ConsensusCriterionDeNovo] = Field(default=None, description="Criterion that was used to select the consensus annotation.", alias="selectionCriterion") __properties: ClassVar[List[str]] = ["molecularFormula", "compoundClasses", "supportingFeatureIds", "selectionCriterion"] model_config = ConfigDict( @@ -74,26 +74,6 @@ def to_dict(self) -> Dict[str, Any]: # override the default output from pydantic by calling `to_dict()` of compound_classes if self.compound_classes: _dict['compoundClasses'] = self.compound_classes.to_dict() - # set to None if molecular_formula (nullable) is None - # and model_fields_set contains the field - if self.molecular_formula is None and "molecular_formula" in self.model_fields_set: - _dict['molecularFormula'] = None - - # set to None if compound_classes (nullable) is None - # and model_fields_set contains the field - if self.compound_classes is None and "compound_classes" in self.model_fields_set: - _dict['compoundClasses'] = None - - # set to None if supporting_feature_ids (nullable) is None - # and model_fields_set contains the field - if self.supporting_feature_ids is None and "supporting_feature_ids" in self.model_fields_set: - _dict['supportingFeatureIds'] = None - - # set to None if selection_criterion (nullable) is None - # and model_fields_set contains the field - if self.selection_criterion is None and "selection_criterion" in self.model_fields_set: - _dict['selectionCriterion'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/cyp450_mode.py b/client-api_python/generated/PySirius/models/cyp450_mode.py new file mode 100644 index 00000000..172fcb98 --- /dev/null +++ b/client-api_python/generated/PySirius/models/cyp450_mode.py @@ -0,0 +1,36 @@ +# 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 json +from enum import Enum +from typing_extensions import Self + + +class Cyp450Mode(str, Enum): + """ + Cyp450Mode + """ + + """ + allowed enum values + """ + RULE_BASED = 'RULE_BASED' + CY_PRODUCT = 'CY_PRODUCT' + COMBINED = 'COMBINED' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of Cyp450Mode from a JSON string""" + return cls(json.loads(json_str)) + + diff --git a/client-api_python/generated/PySirius/models/data_import_event.py b/client-api_python/generated/PySirius/models/data_import_event.py index e4aa25ef..d178f3fd 100644 --- a/client-api_python/generated/PySirius/models/data_import_event.py +++ b/client-api_python/generated/PySirius/models/data_import_event.py @@ -68,11 +68,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if import_job_id (nullable) is None - # and model_fields_set contains the field - if self.import_job_id is None and "import_job_id" in self.model_fields_set: - _dict['importJobId'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/feature_annotations.py b/client-api_python/generated/PySirius/models/feature_annotations.py index 30960d50..edcbf6f4 100644 --- a/client-api_python/generated/PySirius/models/feature_annotations.py +++ b/client-api_python/generated/PySirius/models/feature_annotations.py @@ -28,14 +28,14 @@ class FeatureAnnotations(BaseModel): """ Summary of the results of a feature (aligned over runs). Can be added to a AlignedFeature. The different annotation fields within this summary object are null if the corresponding feature does not contain the represented results. If fields are non-null the corresponding result has been computed but might still be empty. """ # noqa: E501 - formula_annotation: Optional[FormulaCandidate] = Field(default=None, alias="formulaAnnotation") - structure_annotation: Optional[StructureCandidateScored] = Field(default=None, alias="structureAnnotation") - compound_class_annotation: Optional[CompoundClasses] = Field(default=None, alias="compoundClassAnnotation") + formula_annotation: Optional[FormulaCandidate] = Field(default=None, description="Best matching FormulaCandidate.", alias="formulaAnnotation") + structure_annotation: Optional[StructureCandidateScored] = Field(default=None, description="Best matching StructureCandidate ranked by CSI:FingerID Score over all FormulaCandidates.", alias="structureAnnotation") + compound_class_annotation: Optional[CompoundClasses] = Field(default=None, description="Best matching compound classes that correspond to the formulaAnnotation", alias="compoundClassAnnotation") confidence_exact_match: Optional[float] = Field(default=None, description="Confidence Score that represents the confidence whether the top hit is correct.", alias="confidenceExactMatch") confidence_approx_match: Optional[float] = Field(default=None, description="Confidence Score that represents the confidence whether the top hit or a very similar hit (estimated by MCES distance) is correct.", alias="confidenceApproxMatch") - expansive_search_state: Optional[ConfidenceMode] = Field(default=None, alias="expansiveSearchState") - specified_databases: Optional[List[Optional[StrictStr]]] = Field(default=None, description="List of databases that have been specified by for structure db search. Null if no structure db search has been performed.", alias="specifiedDatabases") - expanded_databases: Optional[List[Optional[StrictStr]]] = Field(default=None, description="List of databases that have been used to expand search space during expansive search. Null if no structure db search has been performed.", alias="expandedDatabases") + expansive_search_state: Optional[ConfidenceMode] = Field(default=None, 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)", alias="expansiveSearchState") + specified_databases: Optional[List[StrictStr]] = Field(default=None, description="List of databases that have been specified by for structure db search. Null if no structure db search has been performed.", alias="specifiedDatabases") + expanded_databases: Optional[List[StrictStr]] = Field(default=None, description="List of databases that have been used to expand search space during expansive search. Null if no structure db search has been performed.", alias="expandedDatabases") __properties: ClassVar[List[str]] = ["formulaAnnotation", "structureAnnotation", "compoundClassAnnotation", "confidenceExactMatch", "confidenceApproxMatch", "expansiveSearchState", "specifiedDatabases", "expandedDatabases"] model_config = ConfigDict( @@ -86,46 +86,6 @@ def to_dict(self) -> Dict[str, Any]: # override the default output from pydantic by calling `to_dict()` of compound_class_annotation if self.compound_class_annotation: _dict['compoundClassAnnotation'] = self.compound_class_annotation.to_dict() - # set to None if formula_annotation (nullable) is None - # and model_fields_set contains the field - if self.formula_annotation is None and "formula_annotation" in self.model_fields_set: - _dict['formulaAnnotation'] = None - - # set to None if structure_annotation (nullable) is None - # and model_fields_set contains the field - if self.structure_annotation is None and "structure_annotation" in self.model_fields_set: - _dict['structureAnnotation'] = None - - # set to None if compound_class_annotation (nullable) is None - # and model_fields_set contains the field - if self.compound_class_annotation is None and "compound_class_annotation" in self.model_fields_set: - _dict['compoundClassAnnotation'] = None - - # set to None if confidence_exact_match (nullable) is None - # and model_fields_set contains the field - if self.confidence_exact_match is None and "confidence_exact_match" in self.model_fields_set: - _dict['confidenceExactMatch'] = None - - # set to None if confidence_approx_match (nullable) is None - # and model_fields_set contains the field - if self.confidence_approx_match is None and "confidence_approx_match" in self.model_fields_set: - _dict['confidenceApproxMatch'] = None - - # set to None if expansive_search_state (nullable) is None - # and model_fields_set contains the field - if self.expansive_search_state is None and "expansive_search_state" in self.model_fields_set: - _dict['expansiveSearchState'] = None - - # set to None if specified_databases (nullable) is None - # and model_fields_set contains the field - if self.specified_databases is None and "specified_databases" in self.model_fields_set: - _dict['specifiedDatabases'] = None - - # set to None if expanded_databases (nullable) is None - # and model_fields_set contains the field - if self.expanded_databases is None and "expanded_databases" in self.model_fields_set: - _dict['expandedDatabases'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/feature_import.py b/client-api_python/generated/PySirius/models/feature_import.py index 8896b6ab..c5dd1be3 100644 --- a/client-api_python/generated/PySirius/models/feature_import.py +++ b/client-api_python/generated/PySirius/models/feature_import.py @@ -30,14 +30,14 @@ class FeatureImport(BaseModel): external_feature_id: Optional[StrictStr] = Field(default=None, 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.", alias="externalFeatureId") ion_mass: float = Field(alias="ionMass") charge: StrictInt - detected_adducts: Optional[List[Optional[StrictStr]]] = Field(default=None, description="Detected adducts of this feature. Can be NULL or empty if no adducts are known.", alias="detectedAdducts") + detected_adducts: Optional[List[StrictStr]] = Field(default=None, description="Detected adducts of this feature. Can be NULL or empty if no adducts are known.", alias="detectedAdducts") rt_start_seconds: Optional[float] = Field(default=None, alias="rtStartSeconds") rt_end_seconds: Optional[float] = Field(default=None, alias="rtEndSeconds") rt_apex_seconds: Optional[float] = Field(default=None, alias="rtApexSeconds") - data_quality: Optional[DataQuality] = Field(default=None, alias="dataQuality") - merged_ms1: Optional[BasicSpectrum] = Field(default=None, alias="mergedMs1") - ms1_spectra: Optional[List[Optional[BasicSpectrum]]] = Field(default=None, description="List of MS1Spectra belonging to this feature. These spectra will be merged an only a representative mergedMs1 spectrum will be stored in SIRIUS. At least one of these spectra should contain the isotope pattern of the precursor ion. Note: Will be ignored if 'mergedMs1' is given.", alias="ms1Spectra") - ms2_spectra: Optional[List[Optional[BasicSpectrum]]] = Field(default=None, description="List of MS/MS spectra that belong to this feature.", alias="ms2Spectra") + data_quality: Optional[DataQuality] = Field(default=None, 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.", alias="dataQuality") + merged_ms1: Optional[BasicSpectrum] = Field(default=None, description="Merged/Representative MS1 spectrum of this feature that contains the isotope pattern of the precursor ion. Note: 'ms1Spectra' will be ignored if given.", alias="mergedMs1") + ms1_spectra: Optional[List[BasicSpectrum]] = Field(default=None, description="List of MS1Spectra belonging to this feature. These spectra will be merged an only a representative mergedMs1 spectrum will be stored in SIRIUS. At least one of these spectra should contain the isotope pattern of the precursor ion. Note: Will be ignored if 'mergedMs1' is given.", alias="ms1Spectra") + ms2_spectra: Optional[List[BasicSpectrum]] = Field(default=None, description="List of MS/MS spectra that belong to this feature.", alias="ms2Spectra") __properties: ClassVar[List[str]] = ["name", "externalFeatureId", "ionMass", "charge", "detectedAdducts", "rtStartSeconds", "rtEndSeconds", "rtApexSeconds", "dataQuality", "mergedMs1", "ms1Spectra", "ms2Spectra"] model_config = ConfigDict( @@ -96,56 +96,6 @@ def to_dict(self) -> Dict[str, Any]: if _item_ms2_spectra: _items.append(_item_ms2_spectra.to_dict()) _dict['ms2Spectra'] = _items - # set to None if name (nullable) is None - # and model_fields_set contains the field - if self.name is None and "name" in self.model_fields_set: - _dict['name'] = None - - # set to None if external_feature_id (nullable) is None - # and model_fields_set contains the field - if self.external_feature_id is None and "external_feature_id" in self.model_fields_set: - _dict['externalFeatureId'] = None - - # set to None if detected_adducts (nullable) is None - # and model_fields_set contains the field - if self.detected_adducts is None and "detected_adducts" in self.model_fields_set: - _dict['detectedAdducts'] = None - - # set to None if rt_start_seconds (nullable) is None - # and model_fields_set contains the field - if self.rt_start_seconds is None and "rt_start_seconds" in self.model_fields_set: - _dict['rtStartSeconds'] = None - - # set to None if rt_end_seconds (nullable) is None - # and model_fields_set contains the field - if self.rt_end_seconds is None and "rt_end_seconds" in self.model_fields_set: - _dict['rtEndSeconds'] = None - - # set to None if rt_apex_seconds (nullable) is None - # and model_fields_set contains the field - if self.rt_apex_seconds is None and "rt_apex_seconds" in self.model_fields_set: - _dict['rtApexSeconds'] = None - - # set to None if data_quality (nullable) is None - # and model_fields_set contains the field - if self.data_quality is None and "data_quality" in self.model_fields_set: - _dict['dataQuality'] = None - - # set to None if merged_ms1 (nullable) is None - # and model_fields_set contains the field - if self.merged_ms1 is None and "merged_ms1" in self.model_fields_set: - _dict['mergedMs1'] = None - - # set to None if ms1_spectra (nullable) is None - # and model_fields_set contains the field - if self.ms1_spectra is None and "ms1_spectra" in self.model_fields_set: - _dict['ms1Spectra'] = None - - # set to None if ms2_spectra (nullable) is None - # and model_fields_set contains the field - if self.ms2_spectra is None and "ms2_spectra" in self.model_fields_set: - _dict['ms2Spectra'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/fingerprint_prediction.py b/client-api_python/generated/PySirius/models/fingerprint_prediction.py index 43514af1..5477dc49 100644 --- a/client-api_python/generated/PySirius/models/fingerprint_prediction.py +++ b/client-api_python/generated/PySirius/models/fingerprint_prediction.py @@ -68,16 +68,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if use_score_threshold (nullable) is None - # and model_fields_set contains the field - if self.use_score_threshold is None and "use_score_threshold" in self.model_fields_set: - _dict['useScoreThreshold'] = None - - # set to None if always_predict_high_ref_matches (nullable) is None - # and model_fields_set contains the field - if self.always_predict_high_ref_matches is None and "always_predict_high_ref_matches" in self.model_fields_set: - _dict['alwaysPredictHighRefMatches'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/fold_change.py b/client-api_python/generated/PySirius/models/fold_change.py new file mode 100644 index 00000000..8b55b0d0 --- /dev/null +++ b/client-api_python/generated/PySirius/models/fold_change.py @@ -0,0 +1,100 @@ +# 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 PySirius.models.aggregation_type import AggregationType +from PySirius.models.quant_measure import QuantMeasure +from PySirius.models.quant_row_type import QuantRowType +from typing import Optional, Set +from typing_extensions import Self + +class FoldChange(BaseModel): + """ + FoldChange + """ # noqa: E501 + left_group: Optional[StrictStr] = Field(default=None, alias="leftGroup") + right_group: Optional[StrictStr] = Field(default=None, alias="rightGroup") + aggregation: Optional[AggregationType] = None + quantification: Optional[QuantMeasure] = None + quant_type: QuantRowType = Field(alias="quantType") + object_id: StrictStr = Field(alias="objectId") + fold_change: float = Field(alias="foldChange") + __properties: ClassVar[List[str]] = ["leftGroup", "rightGroup", "aggregation", "quantification", "quantType", "objectId", "foldChange"] + + 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 FoldChange 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 FoldChange from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "leftGroup": obj.get("leftGroup"), + "rightGroup": obj.get("rightGroup"), + "aggregation": obj.get("aggregation"), + "quantification": obj.get("quantification"), + "quantType": obj.get("quantType"), + "objectId": obj.get("objectId"), + "foldChange": obj.get("foldChange") + }) + return _obj + + diff --git a/client-api_python/generated/PySirius/models/formula_candidate.py b/client-api_python/generated/PySirius/models/formula_candidate.py index 7b05010e..aba7d5a4 100644 --- a/client-api_python/generated/PySirius/models/formula_candidate.py +++ b/client-api_python/generated/PySirius/models/formula_candidate.py @@ -44,13 +44,13 @@ class FormulaCandidate(BaseModel): num_of_explainable_peaks: Optional[StrictInt] = Field(default=None, alias="numOfExplainablePeaks") total_explained_intensity: Optional[float] = Field(default=None, alias="totalExplainedIntensity") median_mass_deviation: Optional[Deviation] = Field(default=None, alias="medianMassDeviation") - fragmentation_tree: Optional[FragmentationTree] = Field(default=None, alias="fragmentationTree") - annotated_spectrum: Optional[AnnotatedSpectrum] = Field(default=None, alias="annotatedSpectrum") - isotope_pattern_annotation: Optional[IsotopePatternAnnotation] = Field(default=None, alias="isotopePatternAnnotation") - lipid_annotation: Optional[LipidAnnotation] = Field(default=None, alias="lipidAnnotation") - predicted_fingerprint: Optional[List[Optional[float]]] = Field(default=None, description="Probabilistic molecular fingerprint predicted by CSI:FingerID", alias="predictedFingerprint") - compound_classes: Optional[CompoundClasses] = Field(default=None, alias="compoundClasses") - canopus_prediction: Optional[CanopusPrediction] = Field(default=None, alias="canopusPrediction") + fragmentation_tree: Optional[FragmentationTree] = Field(default=None, description="The fragmentation tree that belongs to this molecular formula candidate (produces the treeScore).", alias="fragmentationTree") + annotated_spectrum: Optional[AnnotatedSpectrum] = Field(default=None, description="Fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses", alias="annotatedSpectrum") + isotope_pattern_annotation: Optional[IsotopePatternAnnotation] = Field(default=None, description="The measured and simulated isotope pattern that have been compared against each other to produce the isotopeScore.", alias="isotopePatternAnnotation") + lipid_annotation: Optional[LipidAnnotation] = Field(default=None, description="ElGordo lipid annotation of this candidate. NULL if annotation was not requested. lipidAnnotation.lipidSpecies == NULL if candidate has not been classified as a lipid", alias="lipidAnnotation") + predicted_fingerprint: Optional[List[float]] = Field(default=None, description="Probabilistic molecular fingerprint predicted by CSI:FingerID", alias="predictedFingerprint") + compound_classes: Optional[CompoundClasses] = Field(default=None, description="Most likely compound classes for different levels of each ontology for this FormulaCandidate (predictedFingerprint)", alias="compoundClasses") + canopus_prediction: Optional[CanopusPrediction] = Field(default=None, description="All classes predicted by canopus for this FormulaCandidate (predictedFingerprint)", alias="canopusPrediction") __properties: ClassVar[List[str]] = ["formulaId", "molecularFormula", "adduct", "rank", "siriusScoreNormalized", "siriusScore", "isotopeScore", "treeScore", "zodiacScore", "numOfExplainedPeaks", "numOfExplainablePeaks", "totalExplainedIntensity", "medianMassDeviation", "fragmentationTree", "annotatedSpectrum", "isotopePatternAnnotation", "lipidAnnotation", "predictedFingerprint", "compoundClasses", "canopusPrediction"] model_config = ConfigDict( @@ -113,86 +113,6 @@ def to_dict(self) -> Dict[str, Any]: # override the default output from pydantic by calling `to_dict()` of canopus_prediction if self.canopus_prediction: _dict['canopusPrediction'] = self.canopus_prediction.to_dict() - # set to None if sirius_score_normalized (nullable) is None - # and model_fields_set contains the field - if self.sirius_score_normalized is None and "sirius_score_normalized" in self.model_fields_set: - _dict['siriusScoreNormalized'] = None - - # set to None if sirius_score (nullable) is None - # and model_fields_set contains the field - if self.sirius_score is None and "sirius_score" in self.model_fields_set: - _dict['siriusScore'] = None - - # set to None if isotope_score (nullable) is None - # and model_fields_set contains the field - if self.isotope_score is None and "isotope_score" in self.model_fields_set: - _dict['isotopeScore'] = None - - # set to None if tree_score (nullable) is None - # and model_fields_set contains the field - if self.tree_score is None and "tree_score" in self.model_fields_set: - _dict['treeScore'] = None - - # set to None if zodiac_score (nullable) is None - # and model_fields_set contains the field - if self.zodiac_score is None and "zodiac_score" in self.model_fields_set: - _dict['zodiacScore'] = None - - # set to None if num_of_explained_peaks (nullable) is None - # and model_fields_set contains the field - if self.num_of_explained_peaks is None and "num_of_explained_peaks" in self.model_fields_set: - _dict['numOfExplainedPeaks'] = None - - # set to None if num_of_explainable_peaks (nullable) is None - # and model_fields_set contains the field - if self.num_of_explainable_peaks is None and "num_of_explainable_peaks" in self.model_fields_set: - _dict['numOfExplainablePeaks'] = None - - # set to None if total_explained_intensity (nullable) is None - # and model_fields_set contains the field - if self.total_explained_intensity is None and "total_explained_intensity" in self.model_fields_set: - _dict['totalExplainedIntensity'] = None - - # set to None if median_mass_deviation (nullable) is None - # and model_fields_set contains the field - if self.median_mass_deviation is None and "median_mass_deviation" in self.model_fields_set: - _dict['medianMassDeviation'] = None - - # set to None if fragmentation_tree (nullable) is None - # and model_fields_set contains the field - if self.fragmentation_tree is None and "fragmentation_tree" in self.model_fields_set: - _dict['fragmentationTree'] = None - - # set to None if annotated_spectrum (nullable) is None - # and model_fields_set contains the field - if self.annotated_spectrum is None and "annotated_spectrum" in self.model_fields_set: - _dict['annotatedSpectrum'] = None - - # set to None if isotope_pattern_annotation (nullable) is None - # and model_fields_set contains the field - if self.isotope_pattern_annotation is None and "isotope_pattern_annotation" in self.model_fields_set: - _dict['isotopePatternAnnotation'] = None - - # set to None if lipid_annotation (nullable) is None - # and model_fields_set contains the field - if self.lipid_annotation is None and "lipid_annotation" in self.model_fields_set: - _dict['lipidAnnotation'] = None - - # set to None if predicted_fingerprint (nullable) is None - # and model_fields_set contains the field - if self.predicted_fingerprint is None and "predicted_fingerprint" in self.model_fields_set: - _dict['predictedFingerprint'] = None - - # set to None if compound_classes (nullable) is None - # and model_fields_set contains the field - if self.compound_classes is None and "compound_classes" in self.model_fields_set: - _dict['compoundClasses'] = None - - # set to None if canopus_prediction (nullable) is None - # and model_fields_set contains the field - if self.canopus_prediction is None and "canopus_prediction" in self.model_fields_set: - _dict['canopusPrediction'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/fragment_node.py b/client-api_python/generated/PySirius/models/fragment_node.py index f529d049..2c12c9d9 100644 --- a/client-api_python/generated/PySirius/models/fragment_node.py +++ b/client-api_python/generated/PySirius/models/fragment_node.py @@ -73,41 +73,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if molecular_formula (nullable) is None - # and model_fields_set contains the field - if self.molecular_formula is None and "molecular_formula" in self.model_fields_set: - _dict['molecularFormula'] = None - - # set to None if adduct (nullable) is None - # and model_fields_set contains the field - if self.adduct is None and "adduct" in self.model_fields_set: - _dict['adduct'] = None - - # set to None if mass_deviation_da (nullable) is None - # and model_fields_set contains the field - if self.mass_deviation_da is None and "mass_deviation_da" in self.model_fields_set: - _dict['massDeviationDa'] = None - - # set to None if mass_deviation_ppm (nullable) is None - # and model_fields_set contains the field - if self.mass_deviation_ppm is None and "mass_deviation_ppm" in self.model_fields_set: - _dict['massDeviationPpm'] = None - - # set to None if score (nullable) is None - # and model_fields_set contains the field - if self.score is None and "score" in self.model_fields_set: - _dict['score'] = None - - # set to None if intensity (nullable) is None - # and model_fields_set contains the field - if self.intensity is None and "intensity" in self.model_fields_set: - _dict['intensity'] = None - - # set to None if mz (nullable) is None - # and model_fields_set contains the field - if self.mz is None and "mz" in self.model_fields_set: - _dict['mz'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/info.py b/client-api_python/generated/PySirius/models/info.py index 12cccb47..f9dd9e58 100644 --- a/client-api_python/generated/PySirius/models/info.py +++ b/client-api_python/generated/PySirius/models/info.py @@ -78,51 +78,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if night_sky_api_version (nullable) is None - # and model_fields_set contains the field - if self.night_sky_api_version is None and "night_sky_api_version" in self.model_fields_set: - _dict['nightSkyApiVersion'] = None - - # set to None if sirius_version (nullable) is None - # and model_fields_set contains the field - if self.sirius_version is None and "sirius_version" in self.model_fields_set: - _dict['siriusVersion'] = None - - # set to None if latest_sirius_version (nullable) is None - # and model_fields_set contains the field - if self.latest_sirius_version is None and "latest_sirius_version" in self.model_fields_set: - _dict['latestSiriusVersion'] = None - - # set to None if latest_sirius_link (nullable) is None - # and model_fields_set contains the field - if self.latest_sirius_link is None and "latest_sirius_link" in self.model_fields_set: - _dict['latestSiriusLink'] = None - - # set to None if sirius_lib_version (nullable) is None - # and model_fields_set contains the field - if self.sirius_lib_version is None and "sirius_lib_version" in self.model_fields_set: - _dict['siriusLibVersion'] = None - - # set to None if finger_id_lib_version (nullable) is None - # and model_fields_set contains the field - if self.finger_id_lib_version is None and "finger_id_lib_version" in self.model_fields_set: - _dict['fingerIdLibVersion'] = None - - # set to None if chem_db_version (nullable) is None - # and model_fields_set contains the field - if self.chem_db_version is None and "chem_db_version" in self.model_fields_set: - _dict['chemDbVersion'] = None - - # set to None if finger_id_model_version (nullable) is None - # and model_fields_set contains the field - if self.finger_id_model_version is None and "finger_id_model_version" in self.model_fields_set: - _dict['fingerIdModelVersion'] = None - - # set to None if fingerprint_id (nullable) is None - # and model_fields_set contains the field - if self.fingerprint_id is None and "fingerprint_id" in self.model_fields_set: - _dict['fingerprintId'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/isotope_pattern_annotation.py b/client-api_python/generated/PySirius/models/isotope_pattern_annotation.py index 5d1ddd3b..3926beea 100644 --- a/client-api_python/generated/PySirius/models/isotope_pattern_annotation.py +++ b/client-api_python/generated/PySirius/models/isotope_pattern_annotation.py @@ -74,16 +74,6 @@ def to_dict(self) -> Dict[str, Any]: # override the default output from pydantic by calling `to_dict()` of simulated_pattern if self.simulated_pattern: _dict['simulatedPattern'] = self.simulated_pattern.to_dict() - # set to None if isotope_pattern (nullable) is None - # and model_fields_set contains the field - if self.isotope_pattern is None and "isotope_pattern" in self.model_fields_set: - _dict['isotopePattern'] = None - - # set to None if simulated_pattern (nullable) is None - # and model_fields_set contains the field - if self.simulated_pattern is None and "simulated_pattern" in self.model_fields_set: - _dict['simulatedPattern'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/job.py b/client-api_python/generated/PySirius/models/job.py index fb4e82d5..1331e503 100644 --- a/client-api_python/generated/PySirius/models/job.py +++ b/client-api_python/generated/PySirius/models/job.py @@ -28,10 +28,10 @@ class Job(BaseModel): """ # noqa: E501 id: Optional[StrictStr] = Field(default=None, description="Unique identifier to access the job via the API") command: Optional[StrictStr] = Field(default=None, description="Command string of the executed Task") - progress: Optional[JobProgress] = None - affected_compound_ids: Optional[List[Optional[StrictStr]]] = Field(default=None, description="List of compoundIds that are affected by this job. This lis will also contain compoundIds where not all features of the compound are affected by the job. If this job is creating compounds (e.g. data import jobs) this value will be NULL until the jobs has finished", alias="affectedCompoundIds") - affected_aligned_feature_ids: Optional[List[Optional[StrictStr]]] = Field(default=None, description="List of alignedFeatureIds that are affected by this job. If this job is creating features (e.g. data import jobs) this value will be NULL until the jobs has finished", alias="affectedAlignedFeatureIds") - job_effect: Optional[JobEffect] = Field(default=None, alias="jobEffect") + progress: Optional[JobProgress] = Field(default=None, description="Optional progress information of this job") + affected_compound_ids: Optional[List[StrictStr]] = Field(default=None, description="List of compoundIds that are affected by this job. This lis will also contain compoundIds where not all features of the compound are affected by the job. If this job is creating compounds (e.g. data import jobs) this value will be NULL until the jobs has finished", alias="affectedCompoundIds") + affected_aligned_feature_ids: Optional[List[StrictStr]] = Field(default=None, description="List of alignedFeatureIds that are affected by this job. If this job is creating features (e.g. data import jobs) this value will be NULL until the jobs has finished", alias="affectedAlignedFeatureIds") + job_effect: Optional[JobEffect] = Field(default=None, description="Effect this job has. The affected ids are added, removed or modified. Null if job does not affect features/compounds Not available/null if affected Ids are not requested", alias="jobEffect") __properties: ClassVar[List[str]] = ["id", "command", "progress", "affectedCompoundIds", "affectedAlignedFeatureIds", "jobEffect"] model_config = ConfigDict( @@ -76,31 +76,6 @@ def to_dict(self) -> Dict[str, Any]: # override the default output from pydantic by calling `to_dict()` of progress if self.progress: _dict['progress'] = self.progress.to_dict() - # set to None if command (nullable) is None - # and model_fields_set contains the field - if self.command is None and "command" in self.model_fields_set: - _dict['command'] = None - - # set to None if progress (nullable) is None - # and model_fields_set contains the field - if self.progress is None and "progress" in self.model_fields_set: - _dict['progress'] = None - - # set to None if affected_compound_ids (nullable) is None - # and model_fields_set contains the field - if self.affected_compound_ids is None and "affected_compound_ids" in self.model_fields_set: - _dict['affectedCompoundIds'] = None - - # set to None if affected_aligned_feature_ids (nullable) is None - # and model_fields_set contains the field - if self.affected_aligned_feature_ids is None and "affected_aligned_feature_ids" in self.model_fields_set: - _dict['affectedAlignedFeatureIds'] = None - - # set to None if job_effect (nullable) is None - # and model_fields_set contains the field - if self.job_effect is None and "job_effect" in self.model_fields_set: - _dict['jobEffect'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/job_progress.py b/client-api_python/generated/PySirius/models/job_progress.py index 2fe3662d..caa2ed3c 100644 --- a/client-api_python/generated/PySirius/models/job_progress.py +++ b/client-api_python/generated/PySirius/models/job_progress.py @@ -26,7 +26,7 @@ class JobProgress(BaseModel): Progress information of a computation job that has already been submitted to SIRIUS. if currentProgress == maxProgress job is finished and should change to state done soon. if a job is DONE all results can be accessed via the Project-Spaces api. """ # noqa: E501 indeterminate: Optional[StrictBool] = Field(default=None, description="Is the progress indeterminate or not") - state: Optional[JobState] = None + state: Optional[JobState] = Field(default=None, description="Current state of the Jobs in the SIRIUS internal Job scheduler WAITING: Waiting for submission to ExecutorService (e.g. due to dependent jobs) READY: Ready for submission but not yet enqueued for submission to ExecutorService. QUEUED: Enqueued for submission to ExecutorService. SUBMITTED: Submitted and waiting to be executed. RUNNING: Job is running. CANCELED: Jobs is finished due to cancellation by user or dependent jobs. FAILED: Job is finished but failed. DONE: Job finished successfully.") current_progress: Optional[StrictInt] = Field(default=None, description="Current progress value of the job.", alias="currentProgress") max_progress: Optional[StrictInt] = Field(default=None, description="Progress value to reach (might also change during execution)", alias="maxProgress") message: Optional[StrictStr] = Field(default=None, description="Progress information and warnings.") @@ -72,31 +72,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if indeterminate (nullable) is None - # and model_fields_set contains the field - if self.indeterminate is None and "indeterminate" in self.model_fields_set: - _dict['indeterminate'] = None - - # set to None if current_progress (nullable) is None - # and model_fields_set contains the field - if self.current_progress is None and "current_progress" in self.model_fields_set: - _dict['currentProgress'] = None - - # set to None if max_progress (nullable) is None - # and model_fields_set contains the field - if self.max_progress is None and "max_progress" in self.model_fields_set: - _dict['maxProgress'] = None - - # set to None if message (nullable) is None - # and model_fields_set contains the field - if self.message is None and "message" in self.model_fields_set: - _dict['message'] = None - - # set to None if error_message (nullable) is None - # and model_fields_set contains the field - if self.error_message is None and "error_message" in self.model_fields_set: - _dict['errorMessage'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/job_submission.py b/client-api_python/generated/PySirius/models/job_submission.py index 3dadc669..08ad3335 100644 --- a/client-api_python/generated/PySirius/models/job_submission.py +++ b/client-api_python/generated/PySirius/models/job_submission.py @@ -31,20 +31,20 @@ class JobSubmission(BaseModel): """ Object to submit a job to be executed by SIRIUS """ # noqa: E501 - compound_ids: Optional[List[Optional[StrictStr]]] = Field(default=None, description="Compounds that should be the input for this Job Will be converted to the respective alignedFeatureIds for computation. At least one compoundId or alignedFeatureId needs to be specified.", alias="compoundIds") - aligned_feature_ids: Optional[List[Optional[StrictStr]]] = Field(default=None, description="Features (aligned over runs) that should be the input for this Job At least one compoundId or alignedFeatureId needs to be specified.", alias="alignedFeatureIds") - fallback_adducts: Optional[List[Optional[StrictStr]]] = Field(default=None, description="Describes how to deal with Adducts: Fallback adducts are considered if the auto detection did not find any indication for an ion mode. 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]+ 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]-", alias="fallbackAdducts") - enforced_adducts: Optional[List[Optional[StrictStr]]] = Field(default=None, description="Describes how to deal with Adducts: Enforced adducts that are always considered. 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]+ 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]-", alias="enforcedAdducts") - detectable_adducts: Optional[List[Optional[StrictStr]]] = Field(default=None, 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). 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]+ 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]-", alias="detectableAdducts") + compound_ids: Optional[List[StrictStr]] = Field(default=None, description="Compounds that should be the input for this Job Will be converted to the respective alignedFeatureIds for computation. At least one compoundId or alignedFeatureId needs to be specified.", alias="compoundIds") + aligned_feature_ids: Optional[List[StrictStr]] = Field(default=None, description="Features (aligned over runs) that should be the input for this Job At least one compoundId or alignedFeatureId needs to be specified.", alias="alignedFeatureIds") + fallback_adducts: Optional[List[StrictStr]] = Field(default=None, description="Describes how to deal with Adducts: Fallback adducts are considered if the auto detection did not find any indication for an ion mode. 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]+ 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]-", alias="fallbackAdducts") + enforced_adducts: Optional[List[StrictStr]] = Field(default=None, description="Describes how to deal with Adducts: Enforced adducts that are always considered. 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]+ 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]-", alias="enforcedAdducts") + detectable_adducts: Optional[List[StrictStr]] = Field(default=None, 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). 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]+ 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]-", alias="detectableAdducts") recompute: Optional[StrictBool] = Field(default=None, description="Indicate if already existing result for a tool to be executed should be overwritten or not.") - spectra_search_params: Optional[SpectralLibrarySearch] = Field(default=None, alias="spectraSearchParams") - formula_id_params: Optional[Sirius] = Field(default=None, alias="formulaIdParams") - zodiac_params: Optional[Zodiac] = Field(default=None, alias="zodiacParams") - fingerprint_prediction_params: Optional[FingerprintPrediction] = Field(default=None, alias="fingerprintPredictionParams") - canopus_params: Optional[Canopus] = Field(default=None, alias="canopusParams") - structure_db_search_params: Optional[StructureDbSearch] = Field(default=None, alias="structureDbSearchParams") - ms_novelist_params: Optional[MsNovelist] = Field(default=None, alias="msNovelistParams") - config_map: Optional[Dict[str, Optional[StrictStr]]] = Field(default=None, description="As an alternative to the object based parameters, this map allows to store key value pairs of ALL SIRIUS parameters. All possible parameters can be retrieved from SIRIUS via the respective endpoint.", alias="configMap") + spectra_search_params: Optional[SpectralLibrarySearch] = Field(default=None, description="Parameter Object for spectral library search tool (CLI-Tool: spectra-search). Library search results can be used to enhance formula search results If NULL the tool will not be executed.", alias="spectraSearchParams") + formula_id_params: Optional[Sirius] = Field(default=None, description="Parameter Object for molecular formula identification tool (CLI-Tool: formula, sirius). If NULL the tool will not be executed.", alias="formulaIdParams") + zodiac_params: Optional[Zodiac] = Field(default=None, description="Parameter Object for network based molecular formula re-ranking (CLI-Tool: zodiac). If NULL the tool will not be executed.", alias="zodiacParams") + fingerprint_prediction_params: Optional[FingerprintPrediction] = Field(default=None, description="Parameter Object for Fingerprint prediction with CSI:FingerID (CLI-Tool: fingerint). If NULL the tool will not be executed.", alias="fingerprintPredictionParams") + canopus_params: Optional[Canopus] = Field(default=None, description="Parameter Object for CANOPUS compound class prediction tool (CLI-Tool: canopus). If NULL the tool will not be executed.", alias="canopusParams") + structure_db_search_params: Optional[StructureDbSearch] = Field(default=None, description="Parameter Object for structure database search with CSI:FingerID (CLI-Tool: structure). If NULL the tool will not be executed.", alias="structureDbSearchParams") + ms_novelist_params: Optional[MsNovelist] = Field(default=None, description="Parameter Object for MsNovelist DeNovo structure generation (CLI-Tool: msnovelist) If NULL the tool will not be executed.", alias="msNovelistParams") + config_map: Optional[Dict[str, StrictStr]] = Field(default=None, description="As an alternative to the object based parameters, this map allows to store key value pairs of ALL SIRIUS parameters. All possible parameters can be retrieved from SIRIUS via the respective endpoint.", alias="configMap") __properties: ClassVar[List[str]] = ["compoundIds", "alignedFeatureIds", "fallbackAdducts", "enforcedAdducts", "detectableAdducts", "recompute", "spectraSearchParams", "formulaIdParams", "zodiacParams", "fingerprintPredictionParams", "canopusParams", "structureDbSearchParams", "msNovelistParams", "configMap"] model_config = ConfigDict( @@ -107,76 +107,6 @@ def to_dict(self) -> Dict[str, Any]: # override the default output from pydantic by calling `to_dict()` of ms_novelist_params if self.ms_novelist_params: _dict['msNovelistParams'] = self.ms_novelist_params.to_dict() - # set to None if compound_ids (nullable) is None - # and model_fields_set contains the field - if self.compound_ids is None and "compound_ids" in self.model_fields_set: - _dict['compoundIds'] = None - - # set to None if aligned_feature_ids (nullable) is None - # and model_fields_set contains the field - if self.aligned_feature_ids is None and "aligned_feature_ids" in self.model_fields_set: - _dict['alignedFeatureIds'] = None - - # set to None if fallback_adducts (nullable) is None - # and model_fields_set contains the field - if self.fallback_adducts is None and "fallback_adducts" in self.model_fields_set: - _dict['fallbackAdducts'] = None - - # set to None if enforced_adducts (nullable) is None - # and model_fields_set contains the field - if self.enforced_adducts is None and "enforced_adducts" in self.model_fields_set: - _dict['enforcedAdducts'] = None - - # set to None if detectable_adducts (nullable) is None - # and model_fields_set contains the field - if self.detectable_adducts is None and "detectable_adducts" in self.model_fields_set: - _dict['detectableAdducts'] = None - - # set to None if recompute (nullable) is None - # and model_fields_set contains the field - if self.recompute is None and "recompute" in self.model_fields_set: - _dict['recompute'] = None - - # set to None if spectra_search_params (nullable) is None - # and model_fields_set contains the field - if self.spectra_search_params is None and "spectra_search_params" in self.model_fields_set: - _dict['spectraSearchParams'] = None - - # set to None if formula_id_params (nullable) is None - # and model_fields_set contains the field - if self.formula_id_params is None and "formula_id_params" in self.model_fields_set: - _dict['formulaIdParams'] = None - - # set to None if zodiac_params (nullable) is None - # and model_fields_set contains the field - if self.zodiac_params is None and "zodiac_params" in self.model_fields_set: - _dict['zodiacParams'] = None - - # set to None if fingerprint_prediction_params (nullable) is None - # and model_fields_set contains the field - if self.fingerprint_prediction_params is None and "fingerprint_prediction_params" in self.model_fields_set: - _dict['fingerprintPredictionParams'] = None - - # set to None if canopus_params (nullable) is None - # and model_fields_set contains the field - if self.canopus_params is None and "canopus_params" in self.model_fields_set: - _dict['canopusParams'] = None - - # set to None if structure_db_search_params (nullable) is None - # and model_fields_set contains the field - if self.structure_db_search_params is None and "structure_db_search_params" in self.model_fields_set: - _dict['structureDbSearchParams'] = None - - # set to None if ms_novelist_params (nullable) is None - # and model_fields_set contains the field - if self.ms_novelist_params is None and "ms_novelist_params" in self.model_fields_set: - _dict['msNovelistParams'] = None - - # set to None if config_map (nullable) is None - # and model_fields_set contains the field - if self.config_map is None and "config_map" in self.model_fields_set: - _dict['configMap'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/lcms_submission_parameters.py b/client-api_python/generated/PySirius/models/lcms_submission_parameters.py index 04d74fd4..0c80f5ad 100644 --- a/client-api_python/generated/PySirius/models/lcms_submission_parameters.py +++ b/client-api_python/generated/PySirius/models/lcms_submission_parameters.py @@ -17,6 +17,7 @@ from pydantic import BaseModel, ConfigDict, Field, StrictBool from typing import Any, ClassVar, Dict, List, Optional +from PySirius.models.deviation import Deviation from typing import Optional, Set from typing_extensions import Self @@ -25,7 +26,12 @@ class LcmsSubmissionParameters(BaseModel): LcmsSubmissionParameters """ # noqa: E501 align_lcms_runs: Optional[StrictBool] = Field(default=True, description="Specifies whether LC/MS runs should be aligned", alias="alignLCMSRuns") - __properties: ClassVar[List[str]] = ["alignLCMSRuns"] + noise_intensity: Optional[float] = Field(default=-1, description="Noise level under which all peaks are considered to be likely noise. A peak has to be at least 3x noise level to be picked as feature. Peaks with MS/MS are still picked even though they might be below noise level. If not specified, the noise intensity is detected automatically from data. We recommend to NOT specify this parameter, as the automated detection is usually sufficient.", alias="noiseIntensity") + trace_max_mass_deviation: Optional[Deviation] = Field(default=None, description="Maximal allowed mass deviation for peaks in ms1 to be considered as belonging to the same trace.", alias="traceMaxMassDeviation") + align_max_mass_deviation: Optional[Deviation] = Field(default=None, description="Maximal allowed mass deviation for aligning features. If not specified, this parameter is estimated from data.", alias="alignMaxMassDeviation") + align_max_retention_time_deviation: Optional[float] = Field(default=-1, description="Maximal allowed retention time error in seconds for aligning features. If not specified, this parameter is estimated from data.", alias="alignMaxRetentionTimeDeviation") + min_snr: Optional[float] = Field(default=3, 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", alias="minSNR") + __properties: ClassVar[List[str]] = ["alignLCMSRuns", "noiseIntensity", "traceMaxMassDeviation", "alignMaxMassDeviation", "alignMaxRetentionTimeDeviation", "minSNR"] model_config = ConfigDict( populate_by_name=True, @@ -66,6 +72,12 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) + # override the default output from pydantic by calling `to_dict()` of trace_max_mass_deviation + if self.trace_max_mass_deviation: + _dict['traceMaxMassDeviation'] = self.trace_max_mass_deviation.to_dict() + # override the default output from pydantic by calling `to_dict()` of align_max_mass_deviation + if self.align_max_mass_deviation: + _dict['alignMaxMassDeviation'] = self.align_max_mass_deviation.to_dict() return _dict @classmethod @@ -78,7 +90,12 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: return cls.model_validate(obj) _obj = cls.model_validate({ - "alignLCMSRuns": obj.get("alignLCMSRuns") if obj.get("alignLCMSRuns") is not None else True + "alignLCMSRuns": obj.get("alignLCMSRuns") if obj.get("alignLCMSRuns") is not None else True, + "noiseIntensity": obj.get("noiseIntensity") if obj.get("noiseIntensity") is not None else -1, + "traceMaxMassDeviation": Deviation.from_dict(obj["traceMaxMassDeviation"]) if obj.get("traceMaxMassDeviation") is not None else None, + "alignMaxMassDeviation": Deviation.from_dict(obj["alignMaxMassDeviation"]) if obj.get("alignMaxMassDeviation") is not None else None, + "alignMaxRetentionTimeDeviation": obj.get("alignMaxRetentionTimeDeviation") if obj.get("alignMaxRetentionTimeDeviation") is not None else -1, + "minSNR": obj.get("minSNR") if obj.get("minSNR") is not None else 3 }) return _obj diff --git a/client-api_python/generated/PySirius/models/license_info.py b/client-api_python/generated/PySirius/models/license_info.py index d163465d..4889808c 100644 --- a/client-api_python/generated/PySirius/models/license_info.py +++ b/client-api_python/generated/PySirius/models/license_info.py @@ -29,9 +29,9 @@ class LicenseInfo(BaseModel): """ # noqa: E501 user_email: Optional[StrictStr] = Field(default=None, description="Email address of the user account this license information belongs to.", alias="userEmail") user_id: Optional[StrictStr] = Field(default=None, description="User ID (uid) of the user account this license information belongs to.", alias="userId") - subscription: Optional[Subscription] = None - consumables: Optional[SubscriptionConsumables] = None - terms: Optional[List[Optional[Term]]] = None + subscription: Optional[Subscription] = Field(default=None, description="The active subscription that was used the requested the information") + consumables: Optional[SubscriptionConsumables] = Field(default=None, description="Status of the consumable resources of the {@link Subscription Subscription}.") + terms: Optional[List[Term]] = None __properties: ClassVar[List[str]] = ["userEmail", "userId", "subscription", "consumables", "terms"] model_config = ConfigDict( @@ -86,26 +86,6 @@ def to_dict(self) -> Dict[str, Any]: if _item_terms: _items.append(_item_terms.to_dict()) _dict['terms'] = _items - # set to None if user_email (nullable) is None - # and model_fields_set contains the field - if self.user_email is None and "user_email" in self.model_fields_set: - _dict['userEmail'] = None - - # set to None if user_id (nullable) is None - # and model_fields_set contains the field - if self.user_id is None and "user_id" in self.model_fields_set: - _dict['userId'] = None - - # set to None if consumables (nullable) is None - # and model_fields_set contains the field - if self.consumables is None and "consumables" in self.model_fields_set: - _dict['consumables'] = None - - # set to None if terms (nullable) is None - # and model_fields_set contains the field - if self.terms is None and "terms" in self.model_fields_set: - _dict['terms'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/lipid_annotation.py b/client-api_python/generated/PySirius/models/lipid_annotation.py index fd71dd2a..629660d9 100644 --- a/client-api_python/generated/PySirius/models/lipid_annotation.py +++ b/client-api_python/generated/PySirius/models/lipid_annotation.py @@ -70,31 +70,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if lipid_species (nullable) is None - # and model_fields_set contains the field - if self.lipid_species is None and "lipid_species" in self.model_fields_set: - _dict['lipidSpecies'] = None - - # set to None if lipid_maps_id (nullable) is None - # and model_fields_set contains the field - if self.lipid_maps_id is None and "lipid_maps_id" in self.model_fields_set: - _dict['lipidMapsId'] = None - - # set to None if lipid_class_name (nullable) is None - # and model_fields_set contains the field - if self.lipid_class_name is None and "lipid_class_name" in self.model_fields_set: - _dict['lipidClassName'] = None - - # set to None if hypothetical_structure (nullable) is None - # and model_fields_set contains the field - if self.hypothetical_structure is None and "hypothetical_structure" in self.model_fields_set: - _dict['hypotheticalStructure'] = None - - # set to None if chains_unknown (nullable) is None - # and model_fields_set contains the field - if self.chains_unknown is None and "chains_unknown" in self.model_fields_set: - _dict['chainsUnknown'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/metabolic_transformation.py b/client-api_python/generated/PySirius/models/metabolic_transformation.py new file mode 100644 index 00000000..656aee80 --- /dev/null +++ b/client-api_python/generated/PySirius/models/metabolic_transformation.py @@ -0,0 +1,40 @@ +# 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 json +from enum import Enum +from typing_extensions import Self + + +class MetabolicTransformation(str, Enum): + """ + MetabolicTransformation + """ + + """ + allowed enum values + """ + PHASE_1_CYP450 = 'PHASE_1_CYP450' + EC_BASED = 'EC_BASED' + PHASE_2 = 'PHASE_2' + HUMAN_GUT = 'HUMAN_GUT' + ALL_HUMAN = 'ALL_HUMAN' + ABIOTIC = 'ABIOTIC' + HUMAN_CUSTOM_MULTI = 'HUMAN_CUSTOM_MULTI' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of MetabolicTransformation from a JSON string""" + return cls(json.loads(json_str)) + + diff --git a/client-api_python/generated/PySirius/models/ms_data.py b/client-api_python/generated/PySirius/models/ms_data.py index ea72722b..818c1513 100644 --- a/client-api_python/generated/PySirius/models/ms_data.py +++ b/client-api_python/generated/PySirius/models/ms_data.py @@ -23,13 +23,14 @@ class MsData(BaseModel): """ - The MsData wraps all spectral input data belonging to a (aligned) feature. All spectra fields are optional. However, at least one Spectrum field needs to be set to create a valid MsData Object. The different types of spectra fields can be extended to adapt to other MassSpec measurement techniques not covered yet.
Each Feature can have: - One merged MS/MS spectrum (optional) - One merged MS spectrum (optional) - many MS/MS spectra (optional) - many MS spectra (optional)
Each non-merged spectrum has an index which can be used to access the spectrum.
In the future we might add some additional information like chromatographic peak or something similar + The MsData wraps all spectral input data belonging to a (aligned) feature. All spectra fields are optional. However, at least one Spectrum field needs to be set to create a valid MsData Object. The different types of spectra fields can be extended to adapt to other MassSpec measurement techniques not covered yet.
Each Feature can have: - One extracted isotope pattern (optional) - One merged MS/MS spectrum (optional) - One merged MS spectrum (optional) - many MS/MS spectra (optional) - many MS spectra (optional)
Each non-merged spectrum has an index which can be used to access the spectrum.
In the future we might add some additional information like chromatographic peak or something similar """ # noqa: E501 + isotope_pattern: Optional[BasicSpectrum] = Field(default=None, alias="isotopePattern") merged_ms1: Optional[BasicSpectrum] = Field(default=None, alias="mergedMs1") merged_ms2: Optional[BasicSpectrum] = Field(default=None, alias="mergedMs2") - ms1_spectra: Optional[List[Optional[BasicSpectrum]]] = Field(default=None, alias="ms1Spectra") - ms2_spectra: Optional[List[Optional[BasicSpectrum]]] = Field(default=None, alias="ms2Spectra") - __properties: ClassVar[List[str]] = ["mergedMs1", "mergedMs2", "ms1Spectra", "ms2Spectra"] + ms1_spectra: Optional[List[BasicSpectrum]] = Field(default=None, alias="ms1Spectra") + ms2_spectra: Optional[List[BasicSpectrum]] = Field(default=None, alias="ms2Spectra") + __properties: ClassVar[List[str]] = ["isotopePattern", "mergedMs1", "mergedMs2", "ms1Spectra", "ms2Spectra"] model_config = ConfigDict( populate_by_name=True, @@ -70,6 +71,9 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) + # override the default output from pydantic by calling `to_dict()` of isotope_pattern + if self.isotope_pattern: + _dict['isotopePattern'] = self.isotope_pattern.to_dict() # override the default output from pydantic by calling `to_dict()` of merged_ms1 if self.merged_ms1: _dict['mergedMs1'] = self.merged_ms1.to_dict() @@ -90,16 +94,6 @@ def to_dict(self) -> Dict[str, Any]: if _item_ms2_spectra: _items.append(_item_ms2_spectra.to_dict()) _dict['ms2Spectra'] = _items - # set to None if merged_ms1 (nullable) is None - # and model_fields_set contains the field - if self.merged_ms1 is None and "merged_ms1" in self.model_fields_set: - _dict['mergedMs1'] = None - - # set to None if merged_ms2 (nullable) is None - # and model_fields_set contains the field - if self.merged_ms2 is None and "merged_ms2" in self.model_fields_set: - _dict['mergedMs2'] = None - return _dict @classmethod @@ -112,6 +106,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: return cls.model_validate(obj) _obj = cls.model_validate({ + "isotopePattern": BasicSpectrum.from_dict(obj["isotopePattern"]) if obj.get("isotopePattern") is not None else None, "mergedMs1": BasicSpectrum.from_dict(obj["mergedMs1"]) if obj.get("mergedMs1") is not None else None, "mergedMs2": BasicSpectrum.from_dict(obj["mergedMs2"]) if obj.get("mergedMs2") is not None else None, "ms1Spectra": [BasicSpectrum.from_dict(_item) for _item in obj["ms1Spectra"]] if obj.get("ms1Spectra") is not None else None, diff --git a/client-api_python/generated/PySirius/models/ms_novelist.py b/client-api_python/generated/PySirius/models/ms_novelist.py index 3de78105..52b5a0d3 100644 --- a/client-api_python/generated/PySirius/models/ms_novelist.py +++ b/client-api_python/generated/PySirius/models/ms_novelist.py @@ -67,11 +67,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if number_of_candidate_to_predict (nullable) is None - # and model_fields_set contains the field - if self.number_of_candidate_to_predict is None and "number_of_candidate_to_predict" in self.model_fields_set: - _dict['numberOfCandidateToPredict'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/p2_mode.py b/client-api_python/generated/PySirius/models/p2_mode.py new file mode 100644 index 00000000..9c7ef4ae --- /dev/null +++ b/client-api_python/generated/PySirius/models/p2_mode.py @@ -0,0 +1,36 @@ +# 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 json +from enum import Enum +from typing_extensions import Self + + +class P2Mode(str, Enum): + """ + P2Mode + """ + + """ + allowed enum values + """ + BT_RULE_BASED = 'BT_RULE_BASED' + P2_RULE_ONLY = 'P2_RULE_ONLY' + COMBINED_RULES = 'COMBINED_RULES' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of P2Mode from a JSON string""" + return cls(json.loads(json_str)) + + diff --git a/client-api_python/generated/PySirius/models/paged_model_formula_candidate.py b/client-api_python/generated/PySirius/models/paged_model_formula_candidate.py index 7a92a432..4e905b7a 100644 --- a/client-api_python/generated/PySirius/models/paged_model_formula_candidate.py +++ b/client-api_python/generated/PySirius/models/paged_model_formula_candidate.py @@ -26,7 +26,7 @@ class PagedModelFormulaCandidate(BaseModel): """ PagedModelFormulaCandidate """ # noqa: E501 - content: Optional[List[Optional[FormulaCandidate]]] = None + content: Optional[List[FormulaCandidate]] = None page: Optional[PageMetadata] = None __properties: ClassVar[List[str]] = ["content", "page"] diff --git a/client-api_python/generated/PySirius/models/paged_model_run.py b/client-api_python/generated/PySirius/models/paged_model_run.py new file mode 100644 index 00000000..90f4f94d --- /dev/null +++ b/client-api_python/generated/PySirius/models/paged_model_run.py @@ -0,0 +1,99 @@ +# 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 +from typing import Any, ClassVar, Dict, List, Optional +from PySirius.models.page_metadata import PageMetadata +from PySirius.models.run import Run +from typing import Optional, Set +from typing_extensions import Self + +class PagedModelRun(BaseModel): + """ + PagedModelRun + """ # noqa: E501 + content: Optional[List[Run]] = None + page: Optional[PageMetadata] = None + __properties: ClassVar[List[str]] = ["content", "page"] + + 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 PagedModelRun 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, + ) + # override the default output from pydantic by calling `to_dict()` of each item in content (list) + _items = [] + if self.content: + for _item_content in self.content: + if _item_content: + _items.append(_item_content.to_dict()) + _dict['content'] = _items + # override the default output from pydantic by calling `to_dict()` of page + if self.page: + _dict['page'] = self.page.to_dict() + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of PagedModelRun from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "content": [Run.from_dict(_item) for _item in obj["content"]] if obj.get("content") is not None else None, + "page": PageMetadata.from_dict(obj["page"]) if obj.get("page") is not None else None + }) + return _obj + + diff --git a/client-api_python/generated/PySirius/models/paged_model_spectral_library_match.py b/client-api_python/generated/PySirius/models/paged_model_spectral_library_match.py index e8d83748..7fa08ce4 100644 --- a/client-api_python/generated/PySirius/models/paged_model_spectral_library_match.py +++ b/client-api_python/generated/PySirius/models/paged_model_spectral_library_match.py @@ -26,7 +26,7 @@ class PagedModelSpectralLibraryMatch(BaseModel): """ PagedModelSpectralLibraryMatch """ # noqa: E501 - content: Optional[List[Optional[SpectralLibraryMatch]]] = None + content: Optional[List[SpectralLibraryMatch]] = None page: Optional[PageMetadata] = None __properties: ClassVar[List[str]] = ["content", "page"] diff --git a/client-api_python/generated/PySirius/models/paged_model_structure_candidate_scored.py b/client-api_python/generated/PySirius/models/paged_model_structure_candidate_scored.py index edcfa069..ffed6e69 100644 --- a/client-api_python/generated/PySirius/models/paged_model_structure_candidate_scored.py +++ b/client-api_python/generated/PySirius/models/paged_model_structure_candidate_scored.py @@ -26,7 +26,7 @@ class PagedModelStructureCandidateScored(BaseModel): """ PagedModelStructureCandidateScored """ # noqa: E501 - content: Optional[List[Optional[StructureCandidateScored]]] = None + content: Optional[List[StructureCandidateScored]] = None page: Optional[PageMetadata] = None __properties: ClassVar[List[str]] = ["content", "page"] diff --git a/client-api_python/generated/PySirius/models/peak_annotation.py b/client-api_python/generated/PySirius/models/peak_annotation.py index 7b1c9968..630eeb09 100644 --- a/client-api_python/generated/PySirius/models/peak_annotation.py +++ b/client-api_python/generated/PySirius/models/peak_annotation.py @@ -33,10 +33,10 @@ class PeakAnnotation(BaseModel): mass_deviation_ppm: Optional[float] = Field(default=None, description="Relative mass deviation of the exact mass to the measured peak mass in ppm", alias="massDeviationPpm") recalibrated_mass_deviation_mz: Optional[float] = Field(default=None, description="Absolute mass deviation of the exact mass to the recalibrated peak mass in mDa", alias="recalibratedMassDeviationMz") recalibrated_mass_deviation_ppm: Optional[float] = Field(default=None, description="Relative mass deviation of the exact mass to the recalibrated peak mass in ppm", alias="recalibratedMassDeviationPpm") - parent_peak: Optional[ParentPeak] = Field(default=None, alias="parentPeak") - substructure_atoms: Optional[List[Optional[StrictInt]]] = Field(default=None, description="EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Array/List of indices of the atoms of the structure candidate that are part of this fragments substructure (highlighted atoms)", alias="substructureAtoms") - substructure_bonds: Optional[List[Optional[StrictInt]]] = Field(default=None, description="EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Array/List of indices of the bonds of the structure candidate that are part of this fragments substructure (highlighted bonds) Null if substructure annotation not available or not requested.", alias="substructureBonds") - substructure_bonds_cut: Optional[List[Optional[StrictInt]]] = Field(default=None, description="EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Array/List of indices of the bonds of the structure candidate that need to be cut to produce this fragments substructure (highlighted cutted bonds). Null if substructure annotation not available or not requested.", alias="substructureBondsCut") + parent_peak: Optional[ParentPeak] = Field(default=None, description="Link to the parent peak connected via the neutral loss from the fragmentation tree.", alias="parentPeak") + substructure_atoms: Optional[List[StrictInt]] = Field(default=None, description="EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Array/List of indices of the atoms of the structure candidate that are part of this fragments substructure (highlighted atoms)", alias="substructureAtoms") + substructure_bonds: Optional[List[StrictInt]] = Field(default=None, description="EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Array/List of indices of the bonds of the structure candidate that are part of this fragments substructure (highlighted bonds) Null if substructure annotation not available or not requested.", alias="substructureBonds") + substructure_bonds_cut: Optional[List[StrictInt]] = Field(default=None, description="EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Array/List of indices of the bonds of the structure candidate that need to be cut to produce this fragments substructure (highlighted cutted bonds). Null if substructure annotation not available or not requested.", alias="substructureBondsCut") substructure_score: Optional[float] = Field(default=None, description="EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. This score roughly reflects the probability of this fragment forming. This is the score of the path from root to this node which has the maximal score or \"profit\". The score of a path is equal to the sum of scores of its contained fragments and edges. Note: Refers to 'totalScore' in CombinatorialNode Null if substructure annotation not available or not requested.", alias="substructureScore") hydrogen_rearrangements: Optional[StrictInt] = Field(default=None, description="EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Number of hydrogens rearrangements needed to match the substructure to the fragment formula. Null if substructure annotation not available or not requested.", alias="hydrogenRearrangements") __properties: ClassVar[List[str]] = ["fragmentId", "molecularFormula", "adduct", "exactMass", "massDeviationMz", "massDeviationPpm", "recalibratedMassDeviationMz", "recalibratedMassDeviationPpm", "parentPeak", "substructureAtoms", "substructureBonds", "substructureBondsCut", "substructureScore", "hydrogenRearrangements"] @@ -83,71 +83,6 @@ def to_dict(self) -> Dict[str, Any]: # override the default output from pydantic by calling `to_dict()` of parent_peak if self.parent_peak: _dict['parentPeak'] = self.parent_peak.to_dict() - # set to None if molecular_formula (nullable) is None - # and model_fields_set contains the field - if self.molecular_formula is None and "molecular_formula" in self.model_fields_set: - _dict['molecularFormula'] = None - - # set to None if adduct (nullable) is None - # and model_fields_set contains the field - if self.adduct is None and "adduct" in self.model_fields_set: - _dict['adduct'] = None - - # set to None if exact_mass (nullable) is None - # and model_fields_set contains the field - if self.exact_mass is None and "exact_mass" in self.model_fields_set: - _dict['exactMass'] = None - - # set to None if mass_deviation_mz (nullable) is None - # and model_fields_set contains the field - if self.mass_deviation_mz is None and "mass_deviation_mz" in self.model_fields_set: - _dict['massDeviationMz'] = None - - # set to None if mass_deviation_ppm (nullable) is None - # and model_fields_set contains the field - if self.mass_deviation_ppm is None and "mass_deviation_ppm" in self.model_fields_set: - _dict['massDeviationPpm'] = None - - # set to None if recalibrated_mass_deviation_mz (nullable) is None - # and model_fields_set contains the field - if self.recalibrated_mass_deviation_mz is None and "recalibrated_mass_deviation_mz" in self.model_fields_set: - _dict['recalibratedMassDeviationMz'] = None - - # set to None if recalibrated_mass_deviation_ppm (nullable) is None - # and model_fields_set contains the field - if self.recalibrated_mass_deviation_ppm is None and "recalibrated_mass_deviation_ppm" in self.model_fields_set: - _dict['recalibratedMassDeviationPpm'] = None - - # set to None if parent_peak (nullable) is None - # and model_fields_set contains the field - if self.parent_peak is None and "parent_peak" in self.model_fields_set: - _dict['parentPeak'] = None - - # set to None if substructure_atoms (nullable) is None - # and model_fields_set contains the field - if self.substructure_atoms is None and "substructure_atoms" in self.model_fields_set: - _dict['substructureAtoms'] = None - - # set to None if substructure_bonds (nullable) is None - # and model_fields_set contains the field - if self.substructure_bonds is None and "substructure_bonds" in self.model_fields_set: - _dict['substructureBonds'] = None - - # set to None if substructure_bonds_cut (nullable) is None - # and model_fields_set contains the field - if self.substructure_bonds_cut is None and "substructure_bonds_cut" in self.model_fields_set: - _dict['substructureBondsCut'] = None - - # set to None if substructure_score (nullable) is None - # and model_fields_set contains the field - if self.substructure_score is None and "substructure_score" in self.model_fields_set: - _dict['substructureScore'] = None - - # set to None if hydrogen_rearrangements (nullable) is None - # and model_fields_set contains the field - if self.hydrogen_rearrangements is None and "hydrogen_rearrangements" in self.model_fields_set: - _dict['hydrogenRearrangements'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/peak_pair.py b/client-api_python/generated/PySirius/models/peak_pair.py new file mode 100644 index 00000000..b7c651ba --- /dev/null +++ b/client-api_python/generated/PySirius/models/peak_pair.py @@ -0,0 +1,87 @@ +# 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, StrictInt +from typing import Any, ClassVar, Dict, List +from typing import Optional, Set +from typing_extensions import Self + +class PeakPair(BaseModel): + """ + PeakPair + """ # noqa: E501 + query_peak: StrictInt = Field(alias="queryPeak") + reference_peak: StrictInt = Field(alias="referencePeak") + __properties: ClassVar[List[str]] = ["queryPeak", "referencePeak"] + + 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 PeakPair 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 PeakPair from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "queryPeak": obj.get("queryPeak"), + "referencePeak": obj.get("referencePeak") + }) + return _obj + + diff --git a/client-api_python/generated/PySirius/models/project_change_event.py b/client-api_python/generated/PySirius/models/project_change_event.py index ae75d335..affbf270 100644 --- a/client-api_python/generated/PySirius/models/project_change_event.py +++ b/client-api_python/generated/PySirius/models/project_change_event.py @@ -72,26 +72,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if compound_id (nullable) is None - # and model_fields_set contains the field - if self.compound_id is None and "compound_id" in self.model_fields_set: - _dict['compoundId'] = None - - # set to None if featured_id (nullable) is None - # and model_fields_set contains the field - if self.featured_id is None and "featured_id" in self.model_fields_set: - _dict['featuredId'] = None - - # set to None if formula_id (nullable) is None - # and model_fields_set contains the field - if self.formula_id is None and "formula_id" in self.model_fields_set: - _dict['formulaId'] = None - - # set to None if structure_in_ch_i_key (nullable) is None - # and model_fields_set contains the field - if self.structure_in_ch_i_key is None and "structure_in_ch_i_key" in self.model_fields_set: - _dict['structureInChIKey'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/project_info.py b/client-api_python/generated/PySirius/models/project_info.py index 80831832..e952e7e0 100644 --- a/client-api_python/generated/PySirius/models/project_info.py +++ b/client-api_python/generated/PySirius/models/project_info.py @@ -28,7 +28,7 @@ class ProjectInfo(BaseModel): project_id: Optional[StrictStr] = Field(default=None, description="a user selected unique name of the project for easy access.", alias="projectId") location: Optional[StrictStr] = Field(default=None, description="storage location of the project.") description: Optional[StrictStr] = Field(default=None, description="Description of this project.") - type: Optional[ProjectType] = None + type: Optional[ProjectType] = Field(default=None, description="Type of this project. NULL if project type has not yet been specified by importing data.") compatible: Optional[StrictBool] = Field(default=None, description="Indicates whether computed results (e.g. fingerprints, compounds classes) are compatible with the backend. If true project is up-to-date and there are no restrictions regarding usage. If false project is incompatible and therefore \"read only\" until the incompatible results have been removed. See updateProject endpoint for further information If NULL the information has not been requested.") num_of_features: Optional[StrictInt] = Field(default=None, description="Number of features (aligned over runs) in this project. If NULL, information has not been requested (See OptField 'sizeInformation').", alias="numOfFeatures") num_of_compounds: Optional[StrictInt] = Field(default=None, 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.", alias="numOfCompounds") @@ -74,36 +74,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if description (nullable) is None - # and model_fields_set contains the field - if self.description is None and "description" in self.model_fields_set: - _dict['description'] = None - - # set to None if type (nullable) is None - # and model_fields_set contains the field - if self.type is None and "type" in self.model_fields_set: - _dict['type'] = None - - # set to None if compatible (nullable) is None - # and model_fields_set contains the field - if self.compatible is None and "compatible" in self.model_fields_set: - _dict['compatible'] = None - - # set to None if num_of_features (nullable) is None - # and model_fields_set contains the field - if self.num_of_features is None and "num_of_features" in self.model_fields_set: - _dict['numOfFeatures'] = None - - # set to None if num_of_compounds (nullable) is None - # and model_fields_set contains the field - if self.num_of_compounds is None and "num_of_compounds" in self.model_fields_set: - _dict['numOfCompounds'] = None - - # set to None if num_of_bytes (nullable) is None - # and model_fields_set contains the field - if self.num_of_bytes is None and "num_of_bytes" in self.model_fields_set: - _dict['numOfBytes'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/project_type.py b/client-api_python/generated/PySirius/models/project_type.py index 526babd3..f0c64d5e 100644 --- a/client-api_python/generated/PySirius/models/project_type.py +++ b/client-api_python/generated/PySirius/models/project_type.py @@ -24,6 +24,7 @@ class ProjectType(str, Enum): """ allowed enum values """ + UNIMPORTED = 'UNIMPORTED' DIRECT_IMPORT = 'DIRECT_IMPORT' PEAKLISTS = 'PEAKLISTS' ALIGNED_RUNS = 'ALIGNED_RUNS' diff --git a/client-api_python/generated/PySirius/models/quality_item.py b/client-api_python/generated/PySirius/models/quality_item.py index 591e2bbe..7237141d 100644 --- a/client-api_python/generated/PySirius/models/quality_item.py +++ b/client-api_python/generated/PySirius/models/quality_item.py @@ -70,11 +70,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if quality (nullable) is None - # and model_fields_set contains the field - if self.quality is None and "quality" in self.model_fields_set: - _dict['quality'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/quant_measure.py b/client-api_python/generated/PySirius/models/quant_measure.py new file mode 100644 index 00000000..e2def182 --- /dev/null +++ b/client-api_python/generated/PySirius/models/quant_measure.py @@ -0,0 +1,35 @@ +# 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 json +from enum import Enum +from typing_extensions import Self + + +class QuantMeasure(str, Enum): + """ + QuantMeasure + """ + + """ + allowed enum values + """ + APEX_INTENSITY = 'APEX_INTENSITY' + AREA_UNDER_CURVE = 'AREA_UNDER_CURVE' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of QuantMeasure from a JSON string""" + return cls(json.loads(json_str)) + + diff --git a/client-api_python/generated/PySirius/models/quantification_row_type.py b/client-api_python/generated/PySirius/models/quant_row_type.py similarity index 76% rename from client-api_python/generated/PySirius/models/quantification_row_type.py rename to client-api_python/generated/PySirius/models/quant_row_type.py index 27f7d7e0..6ef94cd0 100644 --- a/client-api_python/generated/PySirius/models/quantification_row_type.py +++ b/client-api_python/generated/PySirius/models/quant_row_type.py @@ -16,19 +16,20 @@ from typing_extensions import Self -class QuantificationRowType(str, Enum): +class QuantRowType(str, Enum): """ - QuantificationRowType + QuantRowType """ """ allowed enum values """ FEATURES = 'FEATURES' + COMPOUNDS = 'COMPOUNDS' @classmethod def from_json(cls, json_str: str) -> Self: - """Create an instance of QuantificationRowType from a JSON string""" + """Create an instance of QuantRowType from a JSON string""" return cls(json.loads(json_str)) diff --git a/client-api_python/generated/PySirius/models/quantification_table_experimental.py b/client-api_python/generated/PySirius/models/quant_table_experimental.py similarity index 52% rename from client-api_python/generated/PySirius/models/quantification_table_experimental.py rename to client-api_python/generated/PySirius/models/quant_table_experimental.py index 0e7ec007..623fecff 100644 --- a/client-api_python/generated/PySirius/models/quantification_table_experimental.py +++ b/client-api_python/generated/PySirius/models/quant_table_experimental.py @@ -17,25 +17,23 @@ from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr from typing import Any, ClassVar, Dict, List, Optional -from PySirius.models.quantification_column_type import QuantificationColumnType -from PySirius.models.quantification_measure import QuantificationMeasure -from PySirius.models.quantification_row_type import QuantificationRowType +from PySirius.models.quant_measure import QuantMeasure +from PySirius.models.quant_row_type import QuantRowType from typing import Optional, Set from typing_extensions import Self -class QuantificationTableExperimental(BaseModel): +class QuantTableExperimental(BaseModel): """ EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable. """ # noqa: E501 - quantification_type: Optional[QuantificationMeasure] = Field(default=None, alias="quantificationType") - row_type: Optional[QuantificationRowType] = Field(default=None, alias="rowType") - column_type: Optional[QuantificationColumnType] = Field(default=None, alias="columnType") - row_ids: Optional[List[Optional[StrictInt]]] = Field(default=None, alias="rowIds") - column_ids: Optional[List[Optional[StrictInt]]] = Field(default=None, alias="columnIds") - row_names: Optional[List[Optional[StrictStr]]] = Field(default=None, alias="rowNames") - column_names: Optional[List[Optional[StrictStr]]] = Field(default=None, alias="columnNames") + quantification_measure: Optional[QuantMeasure] = Field(default=None, alias="quantificationMeasure") + row_type: Optional[QuantRowType] = Field(default=None, alias="rowType") + row_ids: Optional[List[StrictInt]] = Field(default=None, alias="rowIds") + column_ids: Optional[List[StrictInt]] = Field(default=None, alias="columnIds") + row_names: Optional[List[StrictStr]] = Field(default=None, alias="rowNames") + column_names: Optional[List[StrictStr]] = Field(default=None, alias="columnNames") values: Optional[List[List[float]]] = None - __properties: ClassVar[List[str]] = ["quantificationType", "rowType", "columnType", "rowIds", "columnIds", "rowNames", "columnNames", "values"] + __properties: ClassVar[List[str]] = ["quantificationMeasure", "rowType", "rowIds", "columnIds", "rowNames", "columnNames", "values"] model_config = ConfigDict( populate_by_name=True, @@ -55,7 +53,7 @@ def to_json(self) -> str: @classmethod def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of QuantificationTableExperimental from a JSON string""" + """Create an instance of QuantTableExperimental from a JSON string""" return cls.from_dict(json.loads(json_str)) def to_dict(self) -> Dict[str, Any]: @@ -76,31 +74,11 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if row_ids (nullable) is None - # and model_fields_set contains the field - if self.row_ids is None and "row_ids" in self.model_fields_set: - _dict['rowIds'] = None - - # set to None if column_ids (nullable) is None - # and model_fields_set contains the field - if self.column_ids is None and "column_ids" in self.model_fields_set: - _dict['columnIds'] = None - - # set to None if row_names (nullable) is None - # and model_fields_set contains the field - if self.row_names is None and "row_names" in self.model_fields_set: - _dict['rowNames'] = None - - # set to None if column_names (nullable) is None - # and model_fields_set contains the field - if self.column_names is None and "column_names" in self.model_fields_set: - _dict['columnNames'] = None - return _dict @classmethod def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of QuantificationTableExperimental from a dict""" + """Create an instance of QuantTableExperimental from a dict""" if obj is None: return None @@ -108,9 +86,8 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: return cls.model_validate(obj) _obj = cls.model_validate({ - "quantificationType": obj.get("quantificationType"), + "quantificationMeasure": obj.get("quantificationMeasure"), "rowType": obj.get("rowType"), - "columnType": obj.get("columnType"), "rowIds": obj.get("rowIds"), "columnIds": obj.get("columnIds"), "rowNames": obj.get("rowNames"), diff --git a/client-api_python/generated/PySirius/models/run.py b/client-api_python/generated/PySirius/models/run.py new file mode 100644 index 00000000..ec88cc06 --- /dev/null +++ b/client-api_python/generated/PySirius/models/run.py @@ -0,0 +1,112 @@ +# 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 PySirius.models.tag import Tag +from typing import Optional, Set +from typing_extensions import Self + +class Run(BaseModel): + """ + Run + """ # noqa: E501 + run_id: Optional[StrictStr] = Field(default=None, description="Identifier", alias="runId") + name: Optional[StrictStr] = Field(default=None, description="Informative, human-readable name of this run") + source: Optional[StrictStr] = Field(default=None, description="Source location") + chromatography: Optional[StrictStr] = None + ionization: Optional[StrictStr] = None + fragmentation: Optional[StrictStr] = None + mass_analyzers: Optional[List[StrictStr]] = Field(default=None, alias="massAnalyzers") + tags: Optional[Dict[str, Tag]] = Field(default=None, description="Key: tagName, value: tag") + __properties: ClassVar[List[str]] = ["runId", "name", "source", "chromatography", "ionization", "fragmentation", "massAnalyzers", "tags"] + + 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 Run 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, + ) + # override the default output from pydantic by calling `to_dict()` of each value in tags (dict) + _field_dict = {} + if self.tags: + for _key_tags in self.tags: + if self.tags[_key_tags]: + _field_dict[_key_tags] = self.tags[_key_tags].to_dict() + _dict['tags'] = _field_dict + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of Run from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "runId": obj.get("runId"), + "name": obj.get("name"), + "source": obj.get("source"), + "chromatography": obj.get("chromatography"), + "ionization": obj.get("ionization"), + "fragmentation": obj.get("fragmentation"), + "massAnalyzers": obj.get("massAnalyzers"), + "tags": dict( + (_k, Tag.from_dict(_v)) + for _k, _v in obj["tags"].items() + ) + if obj.get("tags") is not None + else None + }) + return _obj + + diff --git a/client-api_python/generated/PySirius/models/run_opt_field.py b/client-api_python/generated/PySirius/models/run_opt_field.py new file mode 100644 index 00000000..3d595746 --- /dev/null +++ b/client-api_python/generated/PySirius/models/run_opt_field.py @@ -0,0 +1,35 @@ +# 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 json +from enum import Enum +from typing_extensions import Self + + +class RunOptField(str, Enum): + """ + RunOptField + """ + + """ + allowed enum values + """ + NONE = 'none' + TAGS = 'tags' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of RunOptField from a JSON string""" + return cls(json.loads(json_str)) + + diff --git a/client-api_python/generated/PySirius/models/sample_type_fold_change_request.py b/client-api_python/generated/PySirius/models/sample_type_fold_change_request.py new file mode 100644 index 00000000..f639f6b2 --- /dev/null +++ b/client-api_python/generated/PySirius/models/sample_type_fold_change_request.py @@ -0,0 +1,89 @@ +# 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 SampleTypeFoldChangeRequest(BaseModel): + """ + SampleTypeFoldChangeRequest + """ # noqa: E501 + sample_run_ids: Optional[List[StrictStr]] = Field(default=None, alias="sampleRunIds") + blank_run_ids: Optional[List[StrictStr]] = Field(default=None, alias="blankRunIds") + control_run_ids: Optional[List[StrictStr]] = Field(default=None, alias="controlRunIds") + __properties: ClassVar[List[str]] = ["sampleRunIds", "blankRunIds", "controlRunIds"] + + 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 SampleTypeFoldChangeRequest 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 SampleTypeFoldChangeRequest from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "sampleRunIds": obj.get("sampleRunIds"), + "blankRunIds": obj.get("blankRunIds"), + "controlRunIds": obj.get("controlRunIds") + }) + return _obj + + diff --git a/client-api_python/generated/PySirius/models/searchable_database.py b/client-api_python/generated/PySirius/models/searchable_database.py index 21b65cc9..aaceb58e 100644 --- a/client-api_python/generated/PySirius/models/searchable_database.py +++ b/client-api_python/generated/PySirius/models/searchable_database.py @@ -78,51 +78,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if display_name (nullable) is None - # and model_fields_set contains the field - if self.display_name is None and "display_name" in self.model_fields_set: - _dict['displayName'] = None - - # set to None if location (nullable) is None - # and model_fields_set contains the field - if self.location is None and "location" in self.model_fields_set: - _dict['location'] = None - - # set to None if match_rt_of_reference_spectra (nullable) is None - # and model_fields_set contains the field - if self.match_rt_of_reference_spectra is None and "match_rt_of_reference_spectra" in self.model_fields_set: - _dict['matchRtOfReferenceSpectra'] = None - - # set to None if db_date (nullable) is None - # and model_fields_set contains the field - if self.db_date is None and "db_date" in self.model_fields_set: - _dict['dbDate'] = None - - # set to None if db_version (nullable) is None - # and model_fields_set contains the field - if self.db_version is None and "db_version" in self.model_fields_set: - _dict['dbVersion'] = None - - # set to None if number_of_structures (nullable) is None - # and model_fields_set contains the field - if self.number_of_structures is None and "number_of_structures" in self.model_fields_set: - _dict['numberOfStructures'] = None - - # set to None if number_of_formulas (nullable) is None - # and model_fields_set contains the field - if self.number_of_formulas is None and "number_of_formulas" in self.model_fields_set: - _dict['numberOfFormulas'] = None - - # set to None if number_of_reference_spectra (nullable) is None - # and model_fields_set contains the field - if self.number_of_reference_spectra is None and "number_of_reference_spectra" in self.model_fields_set: - _dict['numberOfReferenceSpectra'] = None - - # set to None if error_message (nullable) is None - # and model_fields_set contains the field - if self.error_message is None and "error_message" in self.model_fields_set: - _dict['errorMessage'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/searchable_database_parameters.py b/client-api_python/generated/PySirius/models/searchable_database_parameters.py index 94bbc19b..e9a5fa20 100644 --- a/client-api_python/generated/PySirius/models/searchable_database_parameters.py +++ b/client-api_python/generated/PySirius/models/searchable_database_parameters.py @@ -68,21 +68,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if display_name (nullable) is None - # and model_fields_set contains the field - if self.display_name is None and "display_name" in self.model_fields_set: - _dict['displayName'] = None - - # set to None if location (nullable) is None - # and model_fields_set contains the field - if self.location is None and "location" in self.model_fields_set: - _dict['location'] = None - - # set to None if match_rt_of_reference_spectra (nullable) is None - # and model_fields_set contains the field - if self.match_rt_of_reference_spectra is None and "match_rt_of_reference_spectra" in self.model_fields_set: - _dict['matchRtOfReferenceSpectra'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/security_context.py b/client-api_python/generated/PySirius/models/security_context.py new file mode 100644 index 00000000..e0d8ffc5 --- /dev/null +++ b/client-api_python/generated/PySirius/models/security_context.py @@ -0,0 +1,89 @@ +# 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 +from typing import Any, ClassVar, Dict, List, Optional +from PySirius.models.security_context_principal import SecurityContextPrincipal +from typing import Optional, Set +from typing_extensions import Self + +class SecurityContext(BaseModel): + """ + SecurityContext + """ # noqa: E501 + principal: Optional[SecurityContextPrincipal] = None + __properties: ClassVar[List[str]] = ["principal"] + + 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 SecurityContext 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, + ) + # override the default output from pydantic by calling `to_dict()` of principal + if self.principal: + _dict['principal'] = self.principal.to_dict() + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of SecurityContext from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "principal": SecurityContextPrincipal.from_dict(obj["principal"]) if obj.get("principal") is not None else None + }) + return _obj + + diff --git a/client-api_python/generated/PySirius/models/gui_info.py b/client-api_python/generated/PySirius/models/security_context_principal.py similarity index 81% rename from client-api_python/generated/PySirius/models/gui_info.py rename to client-api_python/generated/PySirius/models/security_context_principal.py index 234d774a..c9dfcefc 100644 --- a/client-api_python/generated/PySirius/models/gui_info.py +++ b/client-api_python/generated/PySirius/models/security_context_principal.py @@ -15,17 +15,17 @@ import re # noqa: F401 import json -from pydantic import BaseModel, ConfigDict, Field, StrictStr +from pydantic import BaseModel, ConfigDict, StrictStr from typing import Any, ClassVar, Dict, List, Optional from typing import Optional, Set from typing_extensions import Self -class GuiInfo(BaseModel): +class SecurityContextPrincipal(BaseModel): """ - GuiInfo + SecurityContextPrincipal """ # noqa: E501 - project_id: Optional[StrictStr] = Field(default=None, description="The project this instance is running on", alias="projectId") - __properties: ClassVar[List[str]] = ["projectId"] + name: Optional[StrictStr] = None + __properties: ClassVar[List[str]] = ["name"] model_config = ConfigDict( populate_by_name=True, @@ -45,7 +45,7 @@ def to_json(self) -> str: @classmethod def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of GuiInfo from a JSON string""" + """Create an instance of SecurityContextPrincipal from a JSON string""" return cls.from_dict(json.loads(json_str)) def to_dict(self) -> Dict[str, Any]: @@ -70,7 +70,7 @@ def to_dict(self) -> Dict[str, Any]: @classmethod def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of GuiInfo from a dict""" + """Create an instance of SecurityContextPrincipal from a dict""" if obj is None: return None @@ -78,7 +78,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: return cls.model_validate(obj) _obj = cls.model_validate({ - "projectId": obj.get("projectId") + "name": obj.get("name") }) return _obj diff --git a/client-api_python/generated/PySirius/models/sirius.py b/client-api_python/generated/PySirius/models/sirius.py index f9becd4b..7b836dc2 100644 --- a/client-api_python/generated/PySirius/models/sirius.py +++ b/client-api_python/generated/PySirius/models/sirius.py @@ -29,22 +29,22 @@ class Sirius(BaseModel): User/developer friendly parameter subset for the Formula/SIRIUS tool Can use results from Spectral library search tool. """ # noqa: E501 enabled: Optional[StrictBool] = Field(default=None, description="tags whether the tool is enabled") - profile: Optional[InstrumentProfile] = None + profile: Optional[InstrumentProfile] = Field(default=None, description="Instrument specific profile for internal algorithms Just select what comes closest to the instrument that was used for measuring the data.") number_of_candidates: Optional[StrictInt] = Field(default=None, description="Number of formula candidates to keep as result list (Formula Candidates).", alias="numberOfCandidates") number_of_candidates_per_ionization: Optional[StrictInt] = Field(default=None, description="Use this parameter if you want to force SIRIUS to report at least NumberOfCandidatesPerIonization results per ionization. if <= 0, this parameter will have no effect and just the top NumberOfCandidates results will be reported.", alias="numberOfCandidatesPerIonization") mass_accuracy_ms2ppm: Optional[float] = Field(default=None, description="Maximum allowed mass deviation. Only molecular formulas within this mass window are considered.", alias="massAccuracyMS2ppm") - isotope_ms2_settings: Optional[IsotopeMs2Strategy] = Field(default=None, alias="isotopeMs2Settings") + isotope_ms2_settings: Optional[IsotopeMs2Strategy] = Field(default=None, description="Specify how isotope patterns in MS/MS should be handled.
FILTER: 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.
SCORE: Use them for SCORING. To use this the instrument should produce clear MS/MS isotope patterns
IGNORE: Ignore that there might be isotope patterns in MS/MS", alias="isotopeMs2Settings") filter_by_isotope_pattern: Optional[StrictBool] = Field(default=None, 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.", alias="filterByIsotopePattern") enforce_el_gordo_formula: Optional[StrictBool] = Field(default=None, 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.", alias="enforceElGordoFormula") perform_bottom_up_search: Optional[StrictBool] = Field(default=None, description="If true, molecular formula generation via bottom up search is enabled.", alias="performBottomUpSearch") perform_denovo_below_mz: Optional[float] = Field(default=None, description="Specifies the m/z below which de novo molecular formula generation is enabled. Set to 0 to disable de novo molecular formula generation.", alias="performDenovoBelowMz") - formula_search_dbs: Optional[List[Optional[StrictStr]]] = Field(default=None, description="List Structure database to extract molecular formulas from to reduce formula search space. SIRIUS is quite good at de novo formula annotation, so only enable if you have a good reason.", alias="formulaSearchDBs") + formula_search_dbs: Optional[List[StrictStr]] = Field(default=None, description="List Structure database to extract molecular formulas from to reduce formula search space. SIRIUS is quite good at de novo formula annotation, so only enable if you have a good reason.", alias="formulaSearchDBs") apply_formula_constraints_to_db_and_bottom_up_search: Optional[StrictBool] = Field(default=None, description="By default, the formula (element) constraints are only applied to de novo molecular formula generation. If true, the constraints are as well applied to database search and bottom up search.", alias="applyFormulaConstraintsToDBAndBottomUpSearch") enforced_formula_constraints: Optional[StrictStr] = Field(default=None, description="These configurations hold the information how to autodetect elements based on the given formula constraints. Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.
Enforced: Enforced elements are always considered", alias="enforcedFormulaConstraints") fallback_formula_constraints: Optional[StrictStr] = Field(default=None, description="These configurations hold the information how to autodetect elements based on the given formula constraints. Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.
Fallback: Fallback elements are used, if the auto-detection fails (e.g. no isotope pattern available)", alias="fallbackFormulaConstraints") - detectable_elements: Optional[List[Optional[StrictStr]]] = Field(default=None, description="These configurations hold the information how to autodetect elements based on the given formula constraints. Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.
Detectable: Detectable elements are added to the chemical alphabet, if there are indications for them (e.g. in isotope pattern)", alias="detectableElements") - ilp_timeout: Optional[Timeout] = Field(default=None, alias="ilpTimeout") - use_heuristic: Optional[UseHeuristic] = Field(default=None, alias="useHeuristic") + detectable_elements: Optional[List[StrictStr]] = Field(default=None, description="These configurations hold the information how to autodetect elements based on the given formula constraints. Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.
Detectable: Detectable elements are added to the chemical alphabet, if there are indications for them (e.g. in isotope pattern)", alias="detectableElements") + ilp_timeout: Optional[Timeout] = Field(default=None, description="Timout settings for the ILP solver used for fragmentation tree computation secondsPerInstance: Set the maximum number of seconds for computing a single compound. Set to 0 to disable the time constraint. secondsPerTree: Set the maximum number of seconds for a single molecular formula check. Set to 0 to disable the time constraint", alias="ilpTimeout") + use_heuristic: Optional[UseHeuristic] = Field(default=None, description="Mass thresholds for heuristic fragmentation tree computation which dramatically speeds up computations. useHeuristicAboveMz: For compounds above this threshold fragmentation trees will be computed heuristically for ranking. Tree that will be kept (numberOfCandidates) will be recomputed exactly useOnlyHeuristicAboveMz:For compounds above this threshold fragmentation trees will be computed heuristically.", alias="useHeuristic") inject_spec_lib_match_formulas: Optional[StrictBool] = Field(default=None, description="If true formula candidates that belong to spectral library matches above a certain threshold will we inject/preserved for further analyses no matter which score they have or which filter is applied", alias="injectSpecLibMatchFormulas") min_score_to_inject_spec_lib_match: Optional[float] = Field(default=None, description="Similarity Threshold to inject formula candidates no matter which score/rank they have or which filter settings are applied. If threshold >= 0 formulas candidates with reference spectrum similarity above the threshold will be injected.", alias="minScoreToInjectSpecLibMatch") min_peaks_to_inject_spec_lib_match: Optional[StrictInt] = Field(default=None, description="Matching peaks threshold to inject formula candidates no matter which score they have or which filter is applied.", alias="minPeaksToInjectSpecLibMatch") @@ -95,101 +95,6 @@ def to_dict(self) -> Dict[str, Any]: # override the default output from pydantic by calling `to_dict()` of use_heuristic if self.use_heuristic: _dict['useHeuristic'] = self.use_heuristic.to_dict() - # set to None if profile (nullable) is None - # and model_fields_set contains the field - if self.profile is None and "profile" in self.model_fields_set: - _dict['profile'] = None - - # set to None if number_of_candidates (nullable) is None - # and model_fields_set contains the field - if self.number_of_candidates is None and "number_of_candidates" in self.model_fields_set: - _dict['numberOfCandidates'] = None - - # set to None if number_of_candidates_per_ionization (nullable) is None - # and model_fields_set contains the field - if self.number_of_candidates_per_ionization is None and "number_of_candidates_per_ionization" in self.model_fields_set: - _dict['numberOfCandidatesPerIonization'] = None - - # set to None if mass_accuracy_ms2ppm (nullable) is None - # and model_fields_set contains the field - if self.mass_accuracy_ms2ppm is None and "mass_accuracy_ms2ppm" in self.model_fields_set: - _dict['massAccuracyMS2ppm'] = None - - # set to None if isotope_ms2_settings (nullable) is None - # and model_fields_set contains the field - if self.isotope_ms2_settings is None and "isotope_ms2_settings" in self.model_fields_set: - _dict['isotopeMs2Settings'] = None - - # set to None if filter_by_isotope_pattern (nullable) is None - # and model_fields_set contains the field - if self.filter_by_isotope_pattern is None and "filter_by_isotope_pattern" in self.model_fields_set: - _dict['filterByIsotopePattern'] = None - - # set to None if enforce_el_gordo_formula (nullable) is None - # and model_fields_set contains the field - if self.enforce_el_gordo_formula is None and "enforce_el_gordo_formula" in self.model_fields_set: - _dict['enforceElGordoFormula'] = None - - # set to None if perform_bottom_up_search (nullable) is None - # and model_fields_set contains the field - if self.perform_bottom_up_search is None and "perform_bottom_up_search" in self.model_fields_set: - _dict['performBottomUpSearch'] = None - - # set to None if perform_denovo_below_mz (nullable) is None - # and model_fields_set contains the field - if self.perform_denovo_below_mz is None and "perform_denovo_below_mz" in self.model_fields_set: - _dict['performDenovoBelowMz'] = None - - # set to None if formula_search_dbs (nullable) is None - # and model_fields_set contains the field - if self.formula_search_dbs is None and "formula_search_dbs" in self.model_fields_set: - _dict['formulaSearchDBs'] = None - - # set to None if apply_formula_constraints_to_db_and_bottom_up_search (nullable) is None - # and model_fields_set contains the field - if self.apply_formula_constraints_to_db_and_bottom_up_search is None and "apply_formula_constraints_to_db_and_bottom_up_search" in self.model_fields_set: - _dict['applyFormulaConstraintsToDBAndBottomUpSearch'] = None - - # set to None if enforced_formula_constraints (nullable) is None - # and model_fields_set contains the field - if self.enforced_formula_constraints is None and "enforced_formula_constraints" in self.model_fields_set: - _dict['enforcedFormulaConstraints'] = None - - # set to None if fallback_formula_constraints (nullable) is None - # and model_fields_set contains the field - if self.fallback_formula_constraints is None and "fallback_formula_constraints" in self.model_fields_set: - _dict['fallbackFormulaConstraints'] = None - - # set to None if detectable_elements (nullable) is None - # and model_fields_set contains the field - if self.detectable_elements is None and "detectable_elements" in self.model_fields_set: - _dict['detectableElements'] = None - - # set to None if ilp_timeout (nullable) is None - # and model_fields_set contains the field - if self.ilp_timeout is None and "ilp_timeout" in self.model_fields_set: - _dict['ilpTimeout'] = None - - # set to None if use_heuristic (nullable) is None - # and model_fields_set contains the field - if self.use_heuristic is None and "use_heuristic" in self.model_fields_set: - _dict['useHeuristic'] = None - - # set to None if inject_spec_lib_match_formulas (nullable) is None - # and model_fields_set contains the field - if self.inject_spec_lib_match_formulas is None and "inject_spec_lib_match_formulas" in self.model_fields_set: - _dict['injectSpecLibMatchFormulas'] = None - - # set to None if min_score_to_inject_spec_lib_match (nullable) is None - # and model_fields_set contains the field - if self.min_score_to_inject_spec_lib_match is None and "min_score_to_inject_spec_lib_match" in self.model_fields_set: - _dict['minScoreToInjectSpecLibMatch'] = None - - # set to None if min_peaks_to_inject_spec_lib_match (nullable) is None - # and model_fields_set contains the field - if self.min_peaks_to_inject_spec_lib_match is None and "min_peaks_to_inject_spec_lib_match" in self.model_fields_set: - _dict['minPeaksToInjectSpecLibMatch'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/spectral_library_match.py b/client-api_python/generated/PySirius/models/spectral_library_match.py index 0e0daaa0..1329eec1 100644 --- a/client-api_python/generated/PySirius/models/spectral_library_match.py +++ b/client-api_python/generated/PySirius/models/spectral_library_match.py @@ -18,6 +18,9 @@ from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr from typing import Any, ClassVar, Dict, List, Optional from PySirius.models.basic_spectrum import BasicSpectrum +from PySirius.models.peak_pair import PeakPair +from PySirius.models.spectral_match_type import SpectralMatchType +from PySirius.models.spectrum_type import SpectrumType from typing import Optional, Set from typing_extensions import Self @@ -27,8 +30,9 @@ class SpectralLibraryMatch(BaseModel): """ # noqa: E501 spec_match_id: Optional[StrictStr] = Field(default=None, alias="specMatchId") rank: Optional[StrictInt] = None - similarity: float - shared_peaks: Optional[StrictInt] = Field(default=None, alias="sharedPeaks") + similarity: float = Field(description="Similarity between query and reference spectrum") + shared_peaks: Optional[StrictInt] = Field(default=None, description="Number of shared/matched peaks", alias="sharedPeaks") + shared_peak_mapping: Optional[List[PeakPair]] = Field(default=None, description="List of paired/matched peak indices. Maps indices of peaks from the query spectrum (mass sorted) to indices of matched peaks in the reference spectrum (mass sorted)", alias="sharedPeakMapping") query_spectrum_index: StrictInt = Field(alias="querySpectrumIndex") db_name: Optional[StrictStr] = Field(default=None, alias="dbName") db_id: Optional[StrictStr] = Field(default=None, alias="dbId") @@ -36,11 +40,14 @@ class SpectralLibraryMatch(BaseModel): splash: Optional[StrictStr] = None molecular_formula: Optional[StrictStr] = Field(default=None, alias="molecularFormula") adduct: Optional[StrictStr] = None - exact_mass: Optional[StrictStr] = Field(default=None, alias="exactMass") + exact_mass: Optional[float] = Field(default=None, alias="exactMass") smiles: Optional[StrictStr] = None + type: Optional[SpectralMatchType] = None inchi_key: StrictStr = Field(alias="inchiKey") + reference_spectrum_type: Optional[SpectrumType] = Field(default=None, alias="referenceSpectrumType") reference_spectrum: Optional[BasicSpectrum] = Field(default=None, alias="referenceSpectrum") - __properties: ClassVar[List[str]] = ["specMatchId", "rank", "similarity", "sharedPeaks", "querySpectrumIndex", "dbName", "dbId", "uuid", "splash", "molecularFormula", "adduct", "exactMass", "smiles", "inchiKey", "referenceSpectrum"] + query_spectrum_type: Optional[SpectrumType] = Field(default=None, alias="querySpectrumType") + __properties: ClassVar[List[str]] = ["specMatchId", "rank", "similarity", "sharedPeaks", "sharedPeakMapping", "querySpectrumIndex", "dbName", "dbId", "uuid", "splash", "molecularFormula", "adduct", "exactMass", "smiles", "type", "inchiKey", "referenceSpectrumType", "referenceSpectrum", "querySpectrumType"] model_config = ConfigDict( populate_by_name=True, @@ -81,14 +88,16 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) + # override the default output from pydantic by calling `to_dict()` of each item in shared_peak_mapping (list) + _items = [] + if self.shared_peak_mapping: + for _item_shared_peak_mapping in self.shared_peak_mapping: + if _item_shared_peak_mapping: + _items.append(_item_shared_peak_mapping.to_dict()) + _dict['sharedPeakMapping'] = _items # override the default output from pydantic by calling `to_dict()` of reference_spectrum if self.reference_spectrum: _dict['referenceSpectrum'] = self.reference_spectrum.to_dict() - # set to None if reference_spectrum (nullable) is None - # and model_fields_set contains the field - if self.reference_spectrum is None and "reference_spectrum" in self.model_fields_set: - _dict['referenceSpectrum'] = None - return _dict @classmethod @@ -105,6 +114,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: "rank": obj.get("rank"), "similarity": obj.get("similarity"), "sharedPeaks": obj.get("sharedPeaks"), + "sharedPeakMapping": [PeakPair.from_dict(_item) for _item in obj["sharedPeakMapping"]] if obj.get("sharedPeakMapping") is not None else None, "querySpectrumIndex": obj.get("querySpectrumIndex"), "dbName": obj.get("dbName"), "dbId": obj.get("dbId"), @@ -114,8 +124,11 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: "adduct": obj.get("adduct"), "exactMass": obj.get("exactMass"), "smiles": obj.get("smiles"), + "type": obj.get("type"), "inchiKey": obj.get("inchiKey"), - "referenceSpectrum": BasicSpectrum.from_dict(obj["referenceSpectrum"]) if obj.get("referenceSpectrum") is not None else None + "referenceSpectrumType": obj.get("referenceSpectrumType"), + "referenceSpectrum": BasicSpectrum.from_dict(obj["referenceSpectrum"]) if obj.get("referenceSpectrum") is not None else None, + "querySpectrumType": obj.get("querySpectrumType") }) return _obj diff --git a/client-api_python/generated/PySirius/models/spectral_library_match_summary.py b/client-api_python/generated/PySirius/models/spectral_library_match_summary.py index 46e3cfdf..56570278 100644 --- a/client-api_python/generated/PySirius/models/spectral_library_match_summary.py +++ b/client-api_python/generated/PySirius/models/spectral_library_match_summary.py @@ -73,11 +73,6 @@ def to_dict(self) -> Dict[str, Any]: # override the default output from pydantic by calling `to_dict()` of best_match if self.best_match: _dict['bestMatch'] = self.best_match.to_dict() - # set to None if best_match (nullable) is None - # and model_fields_set contains the field - if self.best_match is None and "best_match" in self.model_fields_set: - _dict['bestMatch'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/spectral_library_search.py b/client-api_python/generated/PySirius/models/spectral_library_search.py index 7055daa5..e1bea3c1 100644 --- a/client-api_python/generated/PySirius/models/spectral_library_search.py +++ b/client-api_python/generated/PySirius/models/spectral_library_search.py @@ -15,7 +15,7 @@ import re # noqa: F401 import json -from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr +from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr from typing import Any, ClassVar, Dict, List, Optional from PySirius.models.spectral_matching_type import SpectralMatchingType from typing import Optional, Set @@ -26,11 +26,16 @@ class SpectralLibrarySearch(BaseModel): User/developer friendly parameter subset for the Spectral library search tool. """ # noqa: E501 enabled: Optional[StrictBool] = Field(default=None, description="tags whether the tool is enabled") - spectra_search_dbs: Optional[List[Optional[StrictStr]]] = Field(default=None, description="Structure Databases with Reference spectra to search in.
Defaults to BIO + Custom Databases. Possible values are available to Database API.", alias="spectraSearchDBs") - peak_deviation_ppm: Optional[float] = Field(default=None, description="Maximum allowed mass deviation in ppm for matching peaks.", alias="peakDeviationPpm") + spectra_search_dbs: Optional[List[StrictStr]] = Field(default=None, description="Structure Databases with Reference spectra to search in.
Defaults to BIO + Custom Databases. Possible values are available to Database API.", alias="spectraSearchDBs") precursor_deviation_ppm: Optional[float] = Field(default=None, description="Maximum allowed mass deviation in ppm for matching the precursor. If not specified, the same value as for the peaks is used.", alias="precursorDeviationPpm") - scoring: Optional[SpectralMatchingType] = None - __properties: ClassVar[List[str]] = ["enabled", "spectraSearchDBs", "peakDeviationPpm", "precursorDeviationPpm", "scoring"] + min_similarity: Optional[float] = Field(default=None, description="Minimal spectral similarity of a spectral match to be considered a hit.", alias="minSimilarity") + min_num_of_peaks: Optional[StrictInt] = Field(default=None, description="Minimal number of matching peaks of a spectral match to be considered a hit.", alias="minNumOfPeaks") + enable_analogue_search: Optional[StrictBool] = Field(default=None, description="Enable analogue search in addition to the identity spectral library search", alias="enableAnalogueSearch") + min_similarity_analogue: Optional[float] = Field(default=None, description="Minimal spectral similarity of a spectral match to be considered an analogue hit.", alias="minSimilarityAnalogue") + min_num_of_peaks_analogue: Optional[StrictInt] = Field(default=None, description="Minimal number of matching peaks of a spectral match to be considered an analogue hit.", alias="minNumOfPeaksAnalogue") + scoring: Optional[SpectralMatchingType] = Field(default=None, description="NO LONGER SUPPORTED (IGNORED) Specify scoring method to match spectra INTENSITY: Intensity weighted. Each peak matches at most one peak in the other spectrum. GAUSSIAN: Treat peaks as (un-normalized) Gaussians and score overlapping areas of PDFs. Each peak might score against multiple peaks in the other spectrum. 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.") + peak_deviation_ppm: Optional[float] = Field(default=None, description="NO LONGER SUPPORTED (IGNORED) Maximum allowed mass deviation in ppm for matching peaks.", alias="peakDeviationPpm") + __properties: ClassVar[List[str]] = ["enabled", "spectraSearchDBs", "precursorDeviationPpm", "minSimilarity", "minNumOfPeaks", "enableAnalogueSearch", "minSimilarityAnalogue", "minNumOfPeaksAnalogue", "scoring", "peakDeviationPpm"] model_config = ConfigDict( populate_by_name=True, @@ -71,26 +76,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if spectra_search_dbs (nullable) is None - # and model_fields_set contains the field - if self.spectra_search_dbs is None and "spectra_search_dbs" in self.model_fields_set: - _dict['spectraSearchDBs'] = None - - # set to None if peak_deviation_ppm (nullable) is None - # and model_fields_set contains the field - if self.peak_deviation_ppm is None and "peak_deviation_ppm" in self.model_fields_set: - _dict['peakDeviationPpm'] = None - - # set to None if precursor_deviation_ppm (nullable) is None - # and model_fields_set contains the field - if self.precursor_deviation_ppm is None and "precursor_deviation_ppm" in self.model_fields_set: - _dict['precursorDeviationPpm'] = None - - # set to None if scoring (nullable) is None - # and model_fields_set contains the field - if self.scoring is None and "scoring" in self.model_fields_set: - _dict['scoring'] = None - return _dict @classmethod @@ -105,9 +90,14 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: _obj = cls.model_validate({ "enabled": obj.get("enabled"), "spectraSearchDBs": obj.get("spectraSearchDBs"), - "peakDeviationPpm": obj.get("peakDeviationPpm"), "precursorDeviationPpm": obj.get("precursorDeviationPpm"), - "scoring": obj.get("scoring") + "minSimilarity": obj.get("minSimilarity"), + "minNumOfPeaks": obj.get("minNumOfPeaks"), + "enableAnalogueSearch": obj.get("enableAnalogueSearch"), + "minSimilarityAnalogue": obj.get("minSimilarityAnalogue"), + "minNumOfPeaksAnalogue": obj.get("minNumOfPeaksAnalogue"), + "scoring": obj.get("scoring"), + "peakDeviationPpm": obj.get("peakDeviationPpm") }) return _obj diff --git a/client-api_python/generated/PySirius/models/spectral_match_type.py b/client-api_python/generated/PySirius/models/spectral_match_type.py new file mode 100644 index 00000000..04e27288 --- /dev/null +++ b/client-api_python/generated/PySirius/models/spectral_match_type.py @@ -0,0 +1,35 @@ +# 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 json +from enum import Enum +from typing_extensions import Self + + +class SpectralMatchType(str, Enum): + """ + SpectralMatchType + """ + + """ + allowed enum values + """ + IDENTITY = 'IDENTITY' + ANALOG = 'ANALOG' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of SpectralMatchType from a JSON string""" + return cls(json.loads(json_str)) + + diff --git a/client-api_python/generated/PySirius/models/spectral_matching_type.py b/client-api_python/generated/PySirius/models/spectral_matching_type.py index 603232dc..ce5bf0ea 100644 --- a/client-api_python/generated/PySirius/models/spectral_matching_type.py +++ b/client-api_python/generated/PySirius/models/spectral_matching_type.py @@ -27,6 +27,7 @@ class SpectralMatchingType(str, Enum): INTENSITY = 'INTENSITY' GAUSSIAN = 'GAUSSIAN' MODIFIED_COSINE = 'MODIFIED_COSINE' + FAST_COSINE = 'FAST_COSINE' @classmethod def from_json(cls, json_str: str) -> Self: diff --git a/client-api_python/generated/PySirius/models/spectrum_annotation.py b/client-api_python/generated/PySirius/models/spectrum_annotation.py index 4cbdb712..a57689fe 100644 --- a/client-api_python/generated/PySirius/models/spectrum_annotation.py +++ b/client-api_python/generated/PySirius/models/spectrum_annotation.py @@ -29,9 +29,11 @@ class SpectrumAnnotation(BaseModel): exact_mass: Optional[float] = Field(default=None, description="Exact mass based on the annotated molecular formula and ionization", alias="exactMass") mass_deviation_mz: Optional[float] = Field(default=None, description="Absolute mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in mDa", alias="massDeviationMz") mass_deviation_ppm: Optional[float] = Field(default=None, description="Relative mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in ppm", alias="massDeviationPpm") - structure_annotation_smiles: Optional[StrictStr] = Field(default=None, description="EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation Substructure highlighting (bond and atom indices) refer to this specific SMILES. If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might not match correctly anymore. Null if substructure annotation not available or not requested.", alias="structureAnnotationSmiles") - structure_annotation_score: Optional[float] = Field(default=None, description="EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles) Null if substructure annotation not available or not requested.", alias="structureAnnotationScore") - __properties: ClassVar[List[str]] = ["molecularFormula", "adduct", "exactMass", "massDeviationMz", "massDeviationPpm", "structureAnnotationSmiles", "structureAnnotationScore"] + structure_annotation_smiles: Optional[StrictStr] = Field(default=None, description="EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.
Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation Substructure highlighting (bond and atom indices) refer to this specific SMILES. If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might not match correctly anymore.
Null if substructure annotation not available or not requested.", alias="structureAnnotationSmiles") + structure_annotation_name: Optional[StrictStr] = Field(default=None, description="EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.
Name of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation.
Null if substructure annotation not available or not requested.", alias="structureAnnotationName") + structure_annotation_svg: Optional[StrictStr] = Field(default=None, description="EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.
SVG graphics of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation Substructure highlighting (bond and atom indices) refers to this SVG.
Null if substructure annotation not available or not requested.", alias="structureAnnotationSvg") + structure_annotation_score: Optional[float] = Field(default=None, description="EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.
Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles)
Null if substructure annotation not available or not requested.", alias="structureAnnotationScore") + __properties: ClassVar[List[str]] = ["molecularFormula", "adduct", "exactMass", "massDeviationMz", "massDeviationPpm", "structureAnnotationSmiles", "structureAnnotationName", "structureAnnotationSvg", "structureAnnotationScore"] model_config = ConfigDict( populate_by_name=True, @@ -72,41 +74,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if molecular_formula (nullable) is None - # and model_fields_set contains the field - if self.molecular_formula is None and "molecular_formula" in self.model_fields_set: - _dict['molecularFormula'] = None - - # set to None if adduct (nullable) is None - # and model_fields_set contains the field - if self.adduct is None and "adduct" in self.model_fields_set: - _dict['adduct'] = None - - # set to None if exact_mass (nullable) is None - # and model_fields_set contains the field - if self.exact_mass is None and "exact_mass" in self.model_fields_set: - _dict['exactMass'] = None - - # set to None if mass_deviation_mz (nullable) is None - # and model_fields_set contains the field - if self.mass_deviation_mz is None and "mass_deviation_mz" in self.model_fields_set: - _dict['massDeviationMz'] = None - - # set to None if mass_deviation_ppm (nullable) is None - # and model_fields_set contains the field - if self.mass_deviation_ppm is None and "mass_deviation_ppm" in self.model_fields_set: - _dict['massDeviationPpm'] = None - - # set to None if structure_annotation_smiles (nullable) is None - # and model_fields_set contains the field - if self.structure_annotation_smiles is None and "structure_annotation_smiles" in self.model_fields_set: - _dict['structureAnnotationSmiles'] = None - - # set to None if structure_annotation_score (nullable) is None - # and model_fields_set contains the field - if self.structure_annotation_score is None and "structure_annotation_score" in self.model_fields_set: - _dict['structureAnnotationScore'] = None - return _dict @classmethod @@ -125,6 +92,8 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: "massDeviationMz": obj.get("massDeviationMz"), "massDeviationPpm": obj.get("massDeviationPpm"), "structureAnnotationSmiles": obj.get("structureAnnotationSmiles"), + "structureAnnotationName": obj.get("structureAnnotationName"), + "structureAnnotationSvg": obj.get("structureAnnotationSvg"), "structureAnnotationScore": obj.get("structureAnnotationScore") }) return _obj diff --git a/client-api_python/generated/PySirius/models/spectrum_type.py b/client-api_python/generated/PySirius/models/spectrum_type.py new file mode 100644 index 00000000..dd8a9051 --- /dev/null +++ b/client-api_python/generated/PySirius/models/spectrum_type.py @@ -0,0 +1,35 @@ +# 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 json +from enum import Enum +from typing_extensions import Self + + +class SpectrumType(str, Enum): + """ + SpectrumType + """ + + """ + allowed enum values + """ + SPECTRUM = 'SPECTRUM' + MERGED_SPECTRUM = 'MERGED_SPECTRUM' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of SpectrumType from a JSON string""" + return cls(json.loads(json_str)) + + diff --git a/client-api_python/generated/PySirius/models/statistics_table.py b/client-api_python/generated/PySirius/models/statistics_table.py new file mode 100644 index 00000000..1b7ac186 --- /dev/null +++ b/client-api_python/generated/PySirius/models/statistics_table.py @@ -0,0 +1,105 @@ +# 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 PySirius.models.aggregation_type import AggregationType +from PySirius.models.quant_measure import QuantMeasure +from PySirius.models.quant_row_type import QuantRowType +from PySirius.models.statistics_type import StatisticsType +from typing import Optional, Set +from typing_extensions import Self + +class StatisticsTable(BaseModel): + """ + StatisticsTable + """ # noqa: E501 + statistics_type: Optional[StatisticsType] = Field(default=None, alias="statisticsType") + aggregation_type: Optional[AggregationType] = Field(default=None, alias="aggregationType") + quantification_measure: Optional[QuantMeasure] = Field(default=None, alias="quantificationMeasure") + row_type: Optional[QuantRowType] = Field(default=None, alias="rowType") + row_ids: Optional[List[StrictStr]] = Field(default=None, alias="rowIds") + column_names: Optional[List[StrictStr]] = Field(default=None, alias="columnNames") + column_left_groups: Optional[List[StrictStr]] = Field(default=None, alias="columnLeftGroups") + column_right_groups: Optional[List[StrictStr]] = Field(default=None, alias="columnRightGroups") + values: Optional[List[List[float]]] = None + __properties: ClassVar[List[str]] = ["statisticsType", "aggregationType", "quantificationMeasure", "rowType", "rowIds", "columnNames", "columnLeftGroups", "columnRightGroups", "values"] + + 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 StatisticsTable 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 StatisticsTable from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "statisticsType": obj.get("statisticsType"), + "aggregationType": obj.get("aggregationType"), + "quantificationMeasure": obj.get("quantificationMeasure"), + "rowType": obj.get("rowType"), + "rowIds": obj.get("rowIds"), + "columnNames": obj.get("columnNames"), + "columnLeftGroups": obj.get("columnLeftGroups"), + "columnRightGroups": obj.get("columnRightGroups"), + "values": obj.get("values") + }) + return _obj + + diff --git a/client-api_python/generated/PySirius/models/statistics_type.py b/client-api_python/generated/PySirius/models/statistics_type.py new file mode 100644 index 00000000..ca7f9dc1 --- /dev/null +++ b/client-api_python/generated/PySirius/models/statistics_type.py @@ -0,0 +1,34 @@ +# 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 json +from enum import Enum +from typing_extensions import Self + + +class StatisticsType(str, Enum): + """ + StatisticsType + """ + + """ + allowed enum values + """ + FOLD_CHANGE = 'FOLD_CHANGE' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of StatisticsType from a JSON string""" + return cls(json.loads(json_str)) + + diff --git a/client-api_python/generated/PySirius/models/stored_job_submission.py b/client-api_python/generated/PySirius/models/stored_job_submission.py index 95b99317..cd0d304e 100644 --- a/client-api_python/generated/PySirius/models/stored_job_submission.py +++ b/client-api_python/generated/PySirius/models/stored_job_submission.py @@ -27,7 +27,7 @@ class StoredJobSubmission(BaseModel): """ # noqa: E501 name: StrictStr = Field(description="Unique name to identify this JobSubmission (job config).") editable: StrictBool = Field(description="False for predefined configs which are not editable and not removable.") - job_submission: JobSubmission = Field(alias="jobSubmission") + job_submission: JobSubmission = Field(description="The JobSubmission identified by the name", alias="jobSubmission") __properties: ClassVar[List[str]] = ["name", "editable", "jobSubmission"] model_config = ConfigDict( diff --git a/client-api_python/generated/PySirius/models/structure_candidate.py b/client-api_python/generated/PySirius/models/structure_candidate.py index 6d3be46b..4bd57c08 100644 --- a/client-api_python/generated/PySirius/models/structure_candidate.py +++ b/client-api_python/generated/PySirius/models/structure_candidate.py @@ -29,10 +29,11 @@ class StructureCandidate(BaseModel): inchi_key: Optional[StrictStr] = Field(default=None, alias="inchiKey") smiles: Optional[StrictStr] = None structure_name: Optional[StrictStr] = Field(default=None, alias="structureName") + structure_svg: Optional[StrictStr] = Field(default=None, description="SVG graphics of the structure candidate OPTIONAL: needs to be added by parameter", alias="structureSvg") + db_links: Optional[List[DBLink]] = Field(default=None, description="List of structure database links belonging to this structure candidate OPTIONAL: needs to be added by parameter", alias="dbLinks") + spectral_library_matches: Optional[List[SpectralLibraryMatch]] = Field(default=None, description="List of spectral library matches belonging to this structure candidate OPTIONAL: needs to be added by parameter", alias="spectralLibraryMatches") xlog_p: Optional[float] = Field(default=None, alias="xlogP") - db_links: Optional[List[Optional[DBLink]]] = Field(default=None, description="List of structure database links belonging to this structure candidate OPTIONAL: needs to be added by parameter", alias="dbLinks") - spectral_library_matches: Optional[List[Optional[SpectralLibraryMatch]]] = Field(default=None, description="List of spectral library matches belonging to this structure candidate OPTIONAL: needs to be added by parameter", alias="spectralLibraryMatches") - __properties: ClassVar[List[str]] = ["inchiKey", "smiles", "structureName", "xlogP", "dbLinks", "spectralLibraryMatches"] + __properties: ClassVar[List[str]] = ["inchiKey", "smiles", "structureName", "structureSvg", "dbLinks", "spectralLibraryMatches", "xlogP"] model_config = ConfigDict( populate_by_name=True, @@ -87,26 +88,6 @@ def to_dict(self) -> Dict[str, Any]: if _item_spectral_library_matches: _items.append(_item_spectral_library_matches.to_dict()) _dict['spectralLibraryMatches'] = _items - # set to None if structure_name (nullable) is None - # and model_fields_set contains the field - if self.structure_name is None and "structure_name" in self.model_fields_set: - _dict['structureName'] = None - - # set to None if xlog_p (nullable) is None - # and model_fields_set contains the field - if self.xlog_p is None and "xlog_p" in self.model_fields_set: - _dict['xlogP'] = None - - # set to None if db_links (nullable) is None - # and model_fields_set contains the field - if self.db_links is None and "db_links" in self.model_fields_set: - _dict['dbLinks'] = None - - # set to None if spectral_library_matches (nullable) is None - # and model_fields_set contains the field - if self.spectral_library_matches is None and "spectral_library_matches" in self.model_fields_set: - _dict['spectralLibraryMatches'] = None - return _dict @classmethod @@ -122,9 +103,10 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: "inchiKey": obj.get("inchiKey"), "smiles": obj.get("smiles"), "structureName": obj.get("structureName"), - "xlogP": obj.get("xlogP"), + "structureSvg": obj.get("structureSvg"), "dbLinks": [DBLink.from_dict(_item) for _item in obj["dbLinks"]] if obj.get("dbLinks") is not None else None, - "spectralLibraryMatches": [SpectralLibraryMatch.from_dict(_item) for _item in obj["spectralLibraryMatches"]] if obj.get("spectralLibraryMatches") is not None else None + "spectralLibraryMatches": [SpectralLibraryMatch.from_dict(_item) for _item in obj["spectralLibraryMatches"]] if obj.get("spectralLibraryMatches") is not None else None, + "xlogP": obj.get("xlogP") }) return _obj diff --git a/client-api_python/generated/PySirius/models/structure_candidate_formula.py b/client-api_python/generated/PySirius/models/structure_candidate_formula.py index 70f1fde6..6076eb97 100644 --- a/client-api_python/generated/PySirius/models/structure_candidate_formula.py +++ b/client-api_python/generated/PySirius/models/structure_candidate_formula.py @@ -30,18 +30,19 @@ class StructureCandidateFormula(BaseModel): inchi_key: Optional[StrictStr] = Field(default=None, alias="inchiKey") smiles: Optional[StrictStr] = None structure_name: Optional[StrictStr] = Field(default=None, alias="structureName") + structure_svg: Optional[StrictStr] = Field(default=None, description="SVG graphics of the structure candidate OPTIONAL: needs to be added by parameter", alias="structureSvg") + db_links: Optional[List[DBLink]] = Field(default=None, description="List of structure database links belonging to this structure candidate OPTIONAL: needs to be added by parameter", alias="dbLinks") + spectral_library_matches: Optional[List[SpectralLibraryMatch]] = Field(default=None, description="List of spectral library matches belonging to this structure candidate OPTIONAL: needs to be added by parameter", alias="spectralLibraryMatches") xlog_p: Optional[float] = Field(default=None, alias="xlogP") - db_links: Optional[List[Optional[DBLink]]] = Field(default=None, description="List of structure database links belonging to this structure candidate OPTIONAL: needs to be added by parameter", alias="dbLinks") - spectral_library_matches: Optional[List[Optional[SpectralLibraryMatch]]] = Field(default=None, description="List of spectral library matches belonging to this structure candidate OPTIONAL: needs to be added by parameter", alias="spectralLibraryMatches") rank: Optional[StrictInt] = Field(default=None, description="the overall rank of this candidate among all candidates of this feature") csi_score: Optional[float] = Field(default=None, description="CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID This is the score used for ranking structure candidates", alias="csiScore") tanimoto_similarity: Optional[float] = Field(default=None, description="Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID", alias="tanimotoSimilarity") mces_dist_to_top_hit: Optional[float] = Field(default=None, description="Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.", alias="mcesDistToTopHit") - fingerprint: Optional[BinaryFingerprint] = None + fingerprint: Optional[BinaryFingerprint] = Field(default=None, description="Array containing the indices of the molecular fingerprint that are available in the structure (1 if present) OPTIONAL: needs to be added by parameter") molecular_formula: Optional[StrictStr] = Field(default=None, description="Molecular formula of this candidate", alias="molecularFormula") adduct: Optional[StrictStr] = Field(default=None, description="Adduct of this candidate") formula_id: Optional[StrictStr] = Field(default=None, description="Id of the corresponding Formula candidate", alias="formulaId") - __properties: ClassVar[List[str]] = ["inchiKey", "smiles", "structureName", "xlogP", "dbLinks", "spectralLibraryMatches", "rank", "csiScore", "tanimotoSimilarity", "mcesDistToTopHit", "fingerprint", "molecularFormula", "adduct", "formulaId"] + __properties: ClassVar[List[str]] = ["inchiKey", "smiles", "structureName", "structureSvg", "dbLinks", "spectralLibraryMatches", "xlogP", "rank", "csiScore", "tanimotoSimilarity", "mcesDistToTopHit", "fingerprint", "molecularFormula", "adduct", "formulaId"] model_config = ConfigDict( populate_by_name=True, @@ -99,41 +100,6 @@ def to_dict(self) -> Dict[str, Any]: # override the default output from pydantic by calling `to_dict()` of fingerprint if self.fingerprint: _dict['fingerprint'] = self.fingerprint.to_dict() - # set to None if structure_name (nullable) is None - # and model_fields_set contains the field - if self.structure_name is None and "structure_name" in self.model_fields_set: - _dict['structureName'] = None - - # set to None if xlog_p (nullable) is None - # and model_fields_set contains the field - if self.xlog_p is None and "xlog_p" in self.model_fields_set: - _dict['xlogP'] = None - - # set to None if db_links (nullable) is None - # and model_fields_set contains the field - if self.db_links is None and "db_links" in self.model_fields_set: - _dict['dbLinks'] = None - - # set to None if spectral_library_matches (nullable) is None - # and model_fields_set contains the field - if self.spectral_library_matches is None and "spectral_library_matches" in self.model_fields_set: - _dict['spectralLibraryMatches'] = None - - # set to None if tanimoto_similarity (nullable) is None - # and model_fields_set contains the field - if self.tanimoto_similarity is None and "tanimoto_similarity" in self.model_fields_set: - _dict['tanimotoSimilarity'] = None - - # set to None if mces_dist_to_top_hit (nullable) is None - # and model_fields_set contains the field - if self.mces_dist_to_top_hit is None and "mces_dist_to_top_hit" in self.model_fields_set: - _dict['mcesDistToTopHit'] = None - - # set to None if fingerprint (nullable) is None - # and model_fields_set contains the field - if self.fingerprint is None and "fingerprint" in self.model_fields_set: - _dict['fingerprint'] = None - return _dict @classmethod @@ -149,9 +115,10 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: "inchiKey": obj.get("inchiKey"), "smiles": obj.get("smiles"), "structureName": obj.get("structureName"), - "xlogP": obj.get("xlogP"), + "structureSvg": obj.get("structureSvg"), "dbLinks": [DBLink.from_dict(_item) for _item in obj["dbLinks"]] if obj.get("dbLinks") is not None else None, "spectralLibraryMatches": [SpectralLibraryMatch.from_dict(_item) for _item in obj["spectralLibraryMatches"]] if obj.get("spectralLibraryMatches") is not None else None, + "xlogP": obj.get("xlogP"), "rank": obj.get("rank"), "csiScore": obj.get("csiScore"), "tanimotoSimilarity": obj.get("tanimotoSimilarity"), diff --git a/client-api_python/generated/PySirius/models/structure_candidate_opt_field.py b/client-api_python/generated/PySirius/models/structure_candidate_opt_field.py index afdd91da..df1921d5 100644 --- a/client-api_python/generated/PySirius/models/structure_candidate_opt_field.py +++ b/client-api_python/generated/PySirius/models/structure_candidate_opt_field.py @@ -28,6 +28,7 @@ class StructureCandidateOptField(str, Enum): FINGERPRINT = 'fingerprint' DBLINKS = 'dbLinks' LIBRARYMATCHES = 'libraryMatches' + STRUCTURESVG = 'structureSvg' @classmethod def from_json(cls, json_str: str) -> Self: diff --git a/client-api_python/generated/PySirius/models/structure_candidate_scored.py b/client-api_python/generated/PySirius/models/structure_candidate_scored.py index 8c0b30e0..5c0064b4 100644 --- a/client-api_python/generated/PySirius/models/structure_candidate_scored.py +++ b/client-api_python/generated/PySirius/models/structure_candidate_scored.py @@ -30,15 +30,16 @@ class StructureCandidateScored(BaseModel): inchi_key: Optional[StrictStr] = Field(default=None, alias="inchiKey") smiles: Optional[StrictStr] = None structure_name: Optional[StrictStr] = Field(default=None, alias="structureName") + structure_svg: Optional[StrictStr] = Field(default=None, description="SVG graphics of the structure candidate OPTIONAL: needs to be added by parameter", alias="structureSvg") + db_links: Optional[List[DBLink]] = Field(default=None, description="List of structure database links belonging to this structure candidate OPTIONAL: needs to be added by parameter", alias="dbLinks") + spectral_library_matches: Optional[List[SpectralLibraryMatch]] = Field(default=None, description="List of spectral library matches belonging to this structure candidate OPTIONAL: needs to be added by parameter", alias="spectralLibraryMatches") xlog_p: Optional[float] = Field(default=None, alias="xlogP") - db_links: Optional[List[Optional[DBLink]]] = Field(default=None, description="List of structure database links belonging to this structure candidate OPTIONAL: needs to be added by parameter", alias="dbLinks") - spectral_library_matches: Optional[List[Optional[SpectralLibraryMatch]]] = Field(default=None, description="List of spectral library matches belonging to this structure candidate OPTIONAL: needs to be added by parameter", alias="spectralLibraryMatches") rank: Optional[StrictInt] = Field(default=None, description="the overall rank of this candidate among all candidates of this feature") csi_score: Optional[float] = Field(default=None, description="CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID This is the score used for ranking structure candidates", alias="csiScore") tanimoto_similarity: Optional[float] = Field(default=None, description="Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID", alias="tanimotoSimilarity") mces_dist_to_top_hit: Optional[float] = Field(default=None, description="Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.", alias="mcesDistToTopHit") - fingerprint: Optional[BinaryFingerprint] = None - __properties: ClassVar[List[str]] = ["inchiKey", "smiles", "structureName", "xlogP", "dbLinks", "spectralLibraryMatches", "rank", "csiScore", "tanimotoSimilarity", "mcesDistToTopHit", "fingerprint"] + fingerprint: Optional[BinaryFingerprint] = Field(default=None, description="Array containing the indices of the molecular fingerprint that are available in the structure (1 if present) OPTIONAL: needs to be added by parameter") + __properties: ClassVar[List[str]] = ["inchiKey", "smiles", "structureName", "structureSvg", "dbLinks", "spectralLibraryMatches", "xlogP", "rank", "csiScore", "tanimotoSimilarity", "mcesDistToTopHit", "fingerprint"] model_config = ConfigDict( populate_by_name=True, @@ -96,41 +97,6 @@ def to_dict(self) -> Dict[str, Any]: # override the default output from pydantic by calling `to_dict()` of fingerprint if self.fingerprint: _dict['fingerprint'] = self.fingerprint.to_dict() - # set to None if structure_name (nullable) is None - # and model_fields_set contains the field - if self.structure_name is None and "structure_name" in self.model_fields_set: - _dict['structureName'] = None - - # set to None if xlog_p (nullable) is None - # and model_fields_set contains the field - if self.xlog_p is None and "xlog_p" in self.model_fields_set: - _dict['xlogP'] = None - - # set to None if db_links (nullable) is None - # and model_fields_set contains the field - if self.db_links is None and "db_links" in self.model_fields_set: - _dict['dbLinks'] = None - - # set to None if spectral_library_matches (nullable) is None - # and model_fields_set contains the field - if self.spectral_library_matches is None and "spectral_library_matches" in self.model_fields_set: - _dict['spectralLibraryMatches'] = None - - # set to None if tanimoto_similarity (nullable) is None - # and model_fields_set contains the field - if self.tanimoto_similarity is None and "tanimoto_similarity" in self.model_fields_set: - _dict['tanimotoSimilarity'] = None - - # set to None if mces_dist_to_top_hit (nullable) is None - # and model_fields_set contains the field - if self.mces_dist_to_top_hit is None and "mces_dist_to_top_hit" in self.model_fields_set: - _dict['mcesDistToTopHit'] = None - - # set to None if fingerprint (nullable) is None - # and model_fields_set contains the field - if self.fingerprint is None and "fingerprint" in self.model_fields_set: - _dict['fingerprint'] = None - return _dict @classmethod @@ -146,9 +112,10 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: "inchiKey": obj.get("inchiKey"), "smiles": obj.get("smiles"), "structureName": obj.get("structureName"), - "xlogP": obj.get("xlogP"), + "structureSvg": obj.get("structureSvg"), "dbLinks": [DBLink.from_dict(_item) for _item in obj["dbLinks"]] if obj.get("dbLinks") is not None else None, "spectralLibraryMatches": [SpectralLibraryMatch.from_dict(_item) for _item in obj["spectralLibraryMatches"]] if obj.get("spectralLibraryMatches") is not None else None, + "xlogP": obj.get("xlogP"), "rank": obj.get("rank"), "csiScore": obj.get("csiScore"), "tanimotoSimilarity": obj.get("tanimotoSimilarity"), diff --git a/client-api_python/generated/PySirius/models/structure_db_search.py b/client-api_python/generated/PySirius/models/structure_db_search.py index 3ffb40e8..b518a9b2 100644 --- a/client-api_python/generated/PySirius/models/structure_db_search.py +++ b/client-api_python/generated/PySirius/models/structure_db_search.py @@ -26,9 +26,9 @@ class StructureDbSearch(BaseModel): User/developer friendly parameter subset for the CSI:FingerID structure db search tool. Needs results from FingerprintPrediction and Canopus Tool. Non-Null parameters in this Object well override their equivalent value in the config map. """ # noqa: E501 enabled: Optional[StrictBool] = Field(default=None, description="tags whether the tool is enabled") - structure_search_dbs: Optional[List[Optional[StrictStr]]] = Field(default=None, description="Structure databases to search in, If expansive search is enabled this DB selection will be expanded to PubChem if not high confidence hit was found in the selected databases.
Defaults to BIO + Custom Databases. Possible values are available to Database API.", alias="structureSearchDBs") + structure_search_dbs: Optional[List[StrictStr]] = Field(default=None, description="Structure databases to search in, If expansive search is enabled this DB selection will be expanded to PubChem if not high confidence hit was found in the selected databases.
Defaults to BIO + Custom Databases. Possible values are available to Database API.", alias="structureSearchDBs") tag_structures_with_lipid_class: Optional[StrictBool] = Field(default=None, description="Candidates matching the lipid class estimated by El Gordo will be tagged. The lipid class will only be available if El Gordo predicts that the MS/MS is a lipid spectrum. If this parameter is set to 'false' El Gordo will still be executed and e.g. improve the fragmentation tree, but the matching structure candidates will not be tagged if they match lipid class.", alias="tagStructuresWithLipidClass") - expansive_search_confidence_mode: Optional[ConfidenceMode] = Field(default=None, alias="expansiveSearchConfidenceMode") + expansive_search_confidence_mode: Optional[ConfidenceMode] = Field(default=None, description="Expansive search mode. Expansive search will expand the search space to whole PubChem in case no hit with reasonable confidence was found in one of the specified databases (structureSearchDBs).
Possible Values OFF - No expansive search is performed EXACT - Use confidence score in exact mode: Only molecular structures identical to the true structure should count as correct identification. APPROXIMATE - Use confidence score in approximate mode: Molecular structures hits that are close to the true structure should count as correct identification.", alias="expansiveSearchConfidenceMode") __properties: ClassVar[List[str]] = ["enabled", "structureSearchDBs", "tagStructuresWithLipidClass", "expansiveSearchConfidenceMode"] model_config = ConfigDict( @@ -70,21 +70,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if structure_search_dbs (nullable) is None - # and model_fields_set contains the field - if self.structure_search_dbs is None and "structure_search_dbs" in self.model_fields_set: - _dict['structureSearchDBs'] = None - - # set to None if tag_structures_with_lipid_class (nullable) is None - # and model_fields_set contains the field - if self.tag_structures_with_lipid_class is None and "tag_structures_with_lipid_class" in self.model_fields_set: - _dict['tagStructuresWithLipidClass'] = None - - # set to None if expansive_search_confidence_mode (nullable) is None - # and model_fields_set contains the field - if self.expansive_search_confidence_mode is None and "expansive_search_confidence_mode" in self.model_fields_set: - _dict['expansiveSearchConfidenceMode'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/subscription.py b/client-api_python/generated/PySirius/models/subscription.py index c0eae167..941c8b07 100644 --- a/client-api_python/generated/PySirius/models/subscription.py +++ b/client-api_python/generated/PySirius/models/subscription.py @@ -18,6 +18,7 @@ from datetime import datetime from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr from typing import Any, ClassVar, Dict, List, Optional +from PySirius.models.allowed_features import AllowedFeatures from typing import Optional, Set from typing_extensions import Self @@ -40,7 +41,8 @@ class Subscription(BaseModel): name: Optional[StrictStr] = None tos: Optional[StrictStr] = None pp: Optional[StrictStr] = None - __properties: ClassVar[List[str]] = ["sid", "subscriberId", "subscriberName", "expirationDate", "startDate", "countQueries", "instanceLimit", "instanceHashRecordingTime", "maxQueriesPerInstance", "maxUserAccounts", "serviceUrl", "description", "name", "tos", "pp"] + allowed_features: Optional[AllowedFeatures] = Field(default=None, alias="allowedFeatures") + __properties: ClassVar[List[str]] = ["sid", "subscriberId", "subscriberName", "expirationDate", "startDate", "countQueries", "instanceLimit", "instanceHashRecordingTime", "maxQueriesPerInstance", "maxUserAccounts", "serviceUrl", "description", "name", "tos", "pp", "allowedFeatures"] model_config = ConfigDict( populate_by_name=True, @@ -81,66 +83,9 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if subscriber_name (nullable) is None - # and model_fields_set contains the field - if self.subscriber_name is None and "subscriber_name" in self.model_fields_set: - _dict['subscriberName'] = None - - # set to None if expiration_date (nullable) is None - # and model_fields_set contains the field - if self.expiration_date is None and "expiration_date" in self.model_fields_set: - _dict['expirationDate'] = None - - # set to None if start_date (nullable) is None - # and model_fields_set contains the field - if self.start_date is None and "start_date" in self.model_fields_set: - _dict['startDate'] = None - - # set to None if count_queries (nullable) is None - # and model_fields_set contains the field - if self.count_queries is None and "count_queries" in self.model_fields_set: - _dict['countQueries'] = None - - # set to None if instance_limit (nullable) is None - # and model_fields_set contains the field - if self.instance_limit is None and "instance_limit" in self.model_fields_set: - _dict['instanceLimit'] = None - - # set to None if instance_hash_recording_time (nullable) is None - # and model_fields_set contains the field - if self.instance_hash_recording_time is None and "instance_hash_recording_time" in self.model_fields_set: - _dict['instanceHashRecordingTime'] = None - - # set to None if max_queries_per_instance (nullable) is None - # and model_fields_set contains the field - if self.max_queries_per_instance is None and "max_queries_per_instance" in self.model_fields_set: - _dict['maxQueriesPerInstance'] = None - - # set to None if max_user_accounts (nullable) is None - # and model_fields_set contains the field - if self.max_user_accounts is None and "max_user_accounts" in self.model_fields_set: - _dict['maxUserAccounts'] = None - - # set to None if description (nullable) is None - # and model_fields_set contains the field - if self.description is None and "description" in self.model_fields_set: - _dict['description'] = None - - # set to None if name (nullable) is None - # and model_fields_set contains the field - if self.name is None and "name" in self.model_fields_set: - _dict['name'] = None - - # set to None if tos (nullable) is None - # and model_fields_set contains the field - if self.tos is None and "tos" in self.model_fields_set: - _dict['tos'] = None - - # set to None if pp (nullable) is None - # and model_fields_set contains the field - if self.pp is None and "pp" in self.model_fields_set: - _dict['pp'] = None - + # override the default output from pydantic by calling `to_dict()` of allowed_features + if self.allowed_features: + _dict['allowedFeatures'] = self.allowed_features.to_dict() return _dict @classmethod @@ -167,7 +112,8 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: "description": obj.get("description"), "name": obj.get("name"), "tos": obj.get("tos"), - "pp": obj.get("pp") + "pp": obj.get("pp"), + "allowedFeatures": AllowedFeatures.from_dict(obj["allowedFeatures"]) if obj.get("allowedFeatures") is not None else None }) return _obj diff --git a/client-api_python/generated/PySirius/models/tag.py b/client-api_python/generated/PySirius/models/tag.py new file mode 100644 index 00000000..107b9f77 --- /dev/null +++ b/client-api_python/generated/PySirius/models/tag.py @@ -0,0 +1,92 @@ +# 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 Tag(BaseModel): + """ + Tag + """ # noqa: E501 + tag_name: StrictStr = Field(description="Name of the tag as defined by the corresponding TagDefinition Links tag object to their definition.", alias="tagName") + value: Optional[Any] = None + __properties: ClassVar[List[str]] = ["tagName", "value"] + + 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 Tag 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, + ) + # set to None if value (nullable) is None + # and model_fields_set contains the field + if self.value is None and "value" in self.model_fields_set: + _dict['value'] = None + + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of Tag from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "tagName": obj.get("tagName"), + "value": obj.get("value") + }) + return _obj + + diff --git a/client-api_python/generated/PySirius/models/tag_definition.py b/client-api_python/generated/PySirius/models/tag_definition.py new file mode 100644 index 00000000..50c9c3b2 --- /dev/null +++ b/client-api_python/generated/PySirius/models/tag_definition.py @@ -0,0 +1,110 @@ +# 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, StrictBool, StrictStr +from typing import Any, ClassVar, Dict, List, Optional +from PySirius.models.value_type import ValueType +from typing import Optional, Set +from typing_extensions import Self + +class TagDefinition(BaseModel): + """ + TagDefinition + """ # noqa: E501 + tag_name: StrictStr = Field(description="Name of this tag defined by this definition (key)", alias="tagName") + description: Optional[StrictStr] = Field(default=None, description="A human-readable description about the purpose of this tag.") + tag_type: Optional[StrictStr] = Field(default=None, description="A simple string based identifier to specify the type/scope/purpose of this tag.", alias="tagType") + value_type: ValueType = Field(alias="valueType") + possible_values: Optional[List[Any]] = Field(default=None, alias="possibleValues") + min_value: Optional[Any] = Field(default=None, alias="minValue") + max_value: Optional[Any] = Field(default=None, alias="maxValue") + editable: Optional[StrictBool] = None + __properties: ClassVar[List[str]] = ["tagName", "description", "tagType", "valueType", "possibleValues", "minValue", "maxValue", "editable"] + + 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 TagDefinition 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, + ) + # set to None if min_value (nullable) is None + # and model_fields_set contains the field + if self.min_value is None and "min_value" in self.model_fields_set: + _dict['minValue'] = None + + # set to None if max_value (nullable) is None + # and model_fields_set contains the field + if self.max_value is None and "max_value" in self.model_fields_set: + _dict['maxValue'] = None + + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of TagDefinition from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "tagName": obj.get("tagName"), + "description": obj.get("description"), + "tagType": obj.get("tagType"), + "valueType": obj.get("valueType"), + "possibleValues": obj.get("possibleValues"), + "minValue": obj.get("minValue"), + "maxValue": obj.get("maxValue"), + "editable": obj.get("editable") + }) + return _obj + + diff --git a/client-api_python/generated/PySirius/models/tag_definition_import.py b/client-api_python/generated/PySirius/models/tag_definition_import.py new file mode 100644 index 00000000..07b4a00a --- /dev/null +++ b/client-api_python/generated/PySirius/models/tag_definition_import.py @@ -0,0 +1,108 @@ +# 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 PySirius.models.value_type import ValueType +from typing import Optional, Set +from typing_extensions import Self + +class TagDefinitionImport(BaseModel): + """ + TagDefinitionImport + """ # noqa: E501 + tag_name: StrictStr = Field(description="Name of this tag defined by this definition (key)", alias="tagName") + description: Optional[StrictStr] = Field(default=None, description="A human-readable description about the purpose of this tag.") + tag_type: Optional[StrictStr] = Field(default=None, description="A simple string based identifier to specify the type/scope/purpose of this tag.", alias="tagType") + value_type: ValueType = Field(alias="valueType") + possible_values: Optional[List[Any]] = Field(default=None, alias="possibleValues") + min_value: Optional[Any] = Field(default=None, alias="minValue") + max_value: Optional[Any] = Field(default=None, alias="maxValue") + __properties: ClassVar[List[str]] = ["tagName", "description", "tagType", "valueType", "possibleValues", "minValue", "maxValue"] + + 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 TagDefinitionImport 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, + ) + # set to None if min_value (nullable) is None + # and model_fields_set contains the field + if self.min_value is None and "min_value" in self.model_fields_set: + _dict['minValue'] = None + + # set to None if max_value (nullable) is None + # and model_fields_set contains the field + if self.max_value is None and "max_value" in self.model_fields_set: + _dict['maxValue'] = None + + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of TagDefinitionImport from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "tagName": obj.get("tagName"), + "description": obj.get("description"), + "tagType": obj.get("tagType"), + "valueType": obj.get("valueType"), + "possibleValues": obj.get("possibleValues"), + "minValue": obj.get("minValue"), + "maxValue": obj.get("maxValue") + }) + return _obj + + diff --git a/client-api_python/generated/PySirius/models/tag_group.py b/client-api_python/generated/PySirius/models/tag_group.py new file mode 100644 index 00000000..489d27f2 --- /dev/null +++ b/client-api_python/generated/PySirius/models/tag_group.py @@ -0,0 +1,89 @@ +# 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 TagGroup(BaseModel): + """ + TagGroup + """ # noqa: E501 + group_name: Optional[StrictStr] = Field(default=None, description="Name of this Grouping query.", alias="groupName") + lucene_query: Optional[StrictStr] = Field(default=None, description="Query used to group the entities in lucene format.", alias="luceneQuery") + group_type: Optional[StrictStr] = Field(default=None, alias="groupType") + __properties: ClassVar[List[str]] = ["groupName", "luceneQuery", "groupType"] + + 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 TagGroup 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 TagGroup from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "groupName": obj.get("groupName"), + "luceneQuery": obj.get("luceneQuery"), + "groupType": obj.get("groupType") + }) + return _obj + + diff --git a/client-api_python/generated/PySirius/models/trace_annotation_experimental.py b/client-api_python/generated/PySirius/models/trace_annotation_experimental.py index 70726427..4110716d 100644 --- a/client-api_python/generated/PySirius/models/trace_annotation_experimental.py +++ b/client-api_python/generated/PySirius/models/trace_annotation_experimental.py @@ -71,21 +71,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # set to None if description (nullable) is None - # and model_fields_set contains the field - if self.description is None and "description" in self.model_fields_set: - _dict['description'] = None - - # set to None if var_from (nullable) is None - # and model_fields_set contains the field - if self.var_from is None and "var_from" in self.model_fields_set: - _dict['from'] = None - - # set to None if to (nullable) is None - # and model_fields_set contains the field - if self.to is None and "to" in self.model_fields_set: - _dict['to'] = None - return _dict @classmethod diff --git a/client-api_python/generated/PySirius/models/trace_experimental.py b/client-api_python/generated/PySirius/models/trace_experimental.py index 543d454b..b01b8796 100644 --- a/client-api_python/generated/PySirius/models/trace_experimental.py +++ b/client-api_python/generated/PySirius/models/trace_experimental.py @@ -29,13 +29,14 @@ class TraceExperimental(BaseModel): sample_id: Optional[StrictStr] = Field(default=None, alias="sampleId") sample_name: Optional[StrictStr] = Field(default=None, alias="sampleName") label: Optional[StrictStr] = None + color: Optional[StrictStr] = None intensities: Optional[List[float]] = None annotations: Optional[List[TraceAnnotationExperimental]] = None mz: Optional[float] = None merged: Optional[StrictBool] = None normalization_factor: Optional[float] = Field(default=None, description="Traces are stored with raw intensity values. The normalization factor maps them to relative intensities, such that traces from different samples can be compared.", alias="normalizationFactor") noise_level: Optional[float] = Field(default=None, description="The noise level is estimated from the median noise in the surrounding scans. It can be used to calculate signal-to-noise ratios.", alias="noiseLevel") - __properties: ClassVar[List[str]] = ["id", "sampleId", "sampleName", "label", "intensities", "annotations", "mz", "merged", "normalizationFactor", "noiseLevel"] + __properties: ClassVar[List[str]] = ["id", "sampleId", "sampleName", "label", "color", "intensities", "annotations", "mz", "merged", "normalizationFactor", "noiseLevel"] model_config = ConfigDict( populate_by_name=True, @@ -83,16 +84,6 @@ def to_dict(self) -> Dict[str, Any]: if _item_annotations: _items.append(_item_annotations.to_dict()) _dict['annotations'] = _items - # set to None if sample_id (nullable) is None - # and model_fields_set contains the field - if self.sample_id is None and "sample_id" in self.model_fields_set: - _dict['sampleId'] = None - - # set to None if sample_name (nullable) is None - # and model_fields_set contains the field - if self.sample_name is None and "sample_name" in self.model_fields_set: - _dict['sampleName'] = None - return _dict @classmethod @@ -109,6 +100,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: "sampleId": obj.get("sampleId"), "sampleName": obj.get("sampleName"), "label": obj.get("label"), + "color": obj.get("color"), "intensities": obj.get("intensities"), "annotations": [TraceAnnotationExperimental.from_dict(_item) for _item in obj["annotations"]] if obj.get("annotations") is not None else None, "mz": obj.get("mz"), diff --git a/client-api_python/generated/PySirius/models/value_type.py b/client-api_python/generated/PySirius/models/value_type.py new file mode 100644 index 00000000..c90e7151 --- /dev/null +++ b/client-api_python/generated/PySirius/models/value_type.py @@ -0,0 +1,40 @@ +# 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 json +from enum import Enum +from typing_extensions import Self + + +class ValueType(str, Enum): + """ + ValueType + """ + + """ + allowed enum values + """ + NONE = 'NONE' + BOOLEAN = 'BOOLEAN' + INTEGER = 'INTEGER' + REAL = 'REAL' + TEXT = 'TEXT' + DATE = 'DATE' + TIME = 'TIME' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of ValueType from a JSON string""" + return cls(json.loads(json_str)) + + diff --git a/client-api_python/generated/PySirius/models/web_server_namespace.py b/client-api_python/generated/PySirius/models/web_server_namespace.py new file mode 100644 index 00000000..9ef64020 --- /dev/null +++ b/client-api_python/generated/PySirius/models/web_server_namespace.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, StrictStr +from typing import Any, ClassVar, Dict, List, Optional +from typing import Optional, Set +from typing_extensions import Self + +class WebServerNamespace(BaseModel): + """ + WebServerNamespace + """ # noqa: E501 + value: Optional[StrictStr] = None + __properties: ClassVar[List[str]] = ["value"] + + 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 WebServerNamespace 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 WebServerNamespace from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "value": obj.get("value") + }) + return _obj + + diff --git a/client-api_python/generated/PySirius/models/zodiac.py b/client-api_python/generated/PySirius/models/zodiac.py index ddc60bad..6f77af21 100644 --- a/client-api_python/generated/PySirius/models/zodiac.py +++ b/client-api_python/generated/PySirius/models/zodiac.py @@ -17,8 +17,10 @@ from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt from typing import Any, ClassVar, Dict, List, Optional +from PySirius.models.zodiac_analogue_nodes import ZodiacAnalogueNodes from PySirius.models.zodiac_edge_filter_thresholds import ZodiacEdgeFilterThresholds from PySirius.models.zodiac_epochs import ZodiacEpochs +from PySirius.models.zodiac_library_scoring import ZodiacLibraryScoring from typing import Optional, Set from typing_extensions import Self @@ -30,9 +32,11 @@ class Zodiac(BaseModel): considered_candidates_at300_mz: Optional[StrictInt] = Field(default=None, 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.", alias="consideredCandidatesAt300Mz") considered_candidates_at800_mz: Optional[StrictInt] = Field(default=None, 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.", alias="consideredCandidatesAt800Mz") run_in_two_steps: Optional[StrictBool] = Field(default=None, description="As default ZODIAC runs a 2-step approach. First running 'good quality compounds' only, and afterwards including the remaining.", alias="runInTwoSteps") - edge_filter_thresholds: Optional[ZodiacEdgeFilterThresholds] = Field(default=None, alias="edgeFilterThresholds") - gibbs_sampler_parameters: Optional[ZodiacEpochs] = Field(default=None, alias="gibbsSamplerParameters") - __properties: ClassVar[List[str]] = ["enabled", "consideredCandidatesAt300Mz", "consideredCandidatesAt800Mz", "runInTwoSteps", "edgeFilterThresholds", "gibbsSamplerParameters"] + edge_filter_thresholds: Optional[ZodiacEdgeFilterThresholds] = Field(default=None, description="thresholdFilter = Defines the proportion of edges of the complete network which will be ignored. minLocalConnections = Minimum number of compounds to which at least one candidate per compound must be connected to.", alias="edgeFilterThresholds") + gibbs_sampler_parameters: Optional[ZodiacEpochs] = Field(default=None, description="iterations: \"Number of epochs to run the Gibbs sampling. When multiple Markov chains are computed, all chains' iterations sum up to this value.\" burnInPeriod: \"Number of epochs considered as 'burn-in period'. numberOfMarkovChains: Number of separate Gibbs sampling runs.", alias="gibbsSamplerParameters") + library_search_anchors: Optional[ZodiacLibraryScoring] = Field(default=None, description="Configure the use of identity spectral library search results as anchors in ZODIAC network", alias="librarySearchAnchors") + analogue_search_anchors: Optional[ZodiacAnalogueNodes] = Field(default=None, description="Configure the use of analogue spectral library search results as anchors in ZODIAC network", alias="analogueSearchAnchors") + __properties: ClassVar[List[str]] = ["enabled", "consideredCandidatesAt300Mz", "consideredCandidatesAt800Mz", "runInTwoSteps", "edgeFilterThresholds", "gibbsSamplerParameters", "librarySearchAnchors", "analogueSearchAnchors"] model_config = ConfigDict( populate_by_name=True, @@ -79,31 +83,12 @@ def to_dict(self) -> Dict[str, Any]: # override the default output from pydantic by calling `to_dict()` of gibbs_sampler_parameters if self.gibbs_sampler_parameters: _dict['gibbsSamplerParameters'] = self.gibbs_sampler_parameters.to_dict() - # set to None if considered_candidates_at300_mz (nullable) is None - # and model_fields_set contains the field - if self.considered_candidates_at300_mz is None and "considered_candidates_at300_mz" in self.model_fields_set: - _dict['consideredCandidatesAt300Mz'] = None - - # set to None if considered_candidates_at800_mz (nullable) is None - # and model_fields_set contains the field - if self.considered_candidates_at800_mz is None and "considered_candidates_at800_mz" in self.model_fields_set: - _dict['consideredCandidatesAt800Mz'] = None - - # set to None if run_in_two_steps (nullable) is None - # and model_fields_set contains the field - if self.run_in_two_steps is None and "run_in_two_steps" in self.model_fields_set: - _dict['runInTwoSteps'] = None - - # set to None if edge_filter_thresholds (nullable) is None - # and model_fields_set contains the field - if self.edge_filter_thresholds is None and "edge_filter_thresholds" in self.model_fields_set: - _dict['edgeFilterThresholds'] = None - - # set to None if gibbs_sampler_parameters (nullable) is None - # and model_fields_set contains the field - if self.gibbs_sampler_parameters is None and "gibbs_sampler_parameters" in self.model_fields_set: - _dict['gibbsSamplerParameters'] = None - + # override the default output from pydantic by calling `to_dict()` of library_search_anchors + if self.library_search_anchors: + _dict['librarySearchAnchors'] = self.library_search_anchors.to_dict() + # override the default output from pydantic by calling `to_dict()` of analogue_search_anchors + if self.analogue_search_anchors: + _dict['analogueSearchAnchors'] = self.analogue_search_anchors.to_dict() return _dict @classmethod @@ -121,7 +106,9 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: "consideredCandidatesAt800Mz": obj.get("consideredCandidatesAt800Mz"), "runInTwoSteps": obj.get("runInTwoSteps"), "edgeFilterThresholds": ZodiacEdgeFilterThresholds.from_dict(obj["edgeFilterThresholds"]) if obj.get("edgeFilterThresholds") is not None else None, - "gibbsSamplerParameters": ZodiacEpochs.from_dict(obj["gibbsSamplerParameters"]) if obj.get("gibbsSamplerParameters") is not None else None + "gibbsSamplerParameters": ZodiacEpochs.from_dict(obj["gibbsSamplerParameters"]) if obj.get("gibbsSamplerParameters") is not None else None, + "librarySearchAnchors": ZodiacLibraryScoring.from_dict(obj["librarySearchAnchors"]) if obj.get("librarySearchAnchors") is not None else None, + "analogueSearchAnchors": ZodiacAnalogueNodes.from_dict(obj["analogueSearchAnchors"]) if obj.get("analogueSearchAnchors") is not None else None }) return _obj diff --git a/client-api_python/generated/PySirius/models/zodiac_analogue_nodes.py b/client-api_python/generated/PySirius/models/zodiac_analogue_nodes.py new file mode 100644 index 00000000..501bbcb4 --- /dev/null +++ b/client-api_python/generated/PySirius/models/zodiac_analogue_nodes.py @@ -0,0 +1,89 @@ +# 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, StrictBool, StrictInt +from typing import Any, ClassVar, Dict, List, Optional +from typing import Optional, Set +from typing_extensions import Self + +class ZodiacAnalogueNodes(BaseModel): + """ + ZodiacAnalogueNodes + """ # noqa: E501 + enabled: Optional[StrictBool] = None + min_similarity: Optional[float] = Field(default=None, alias="minSimilarity") + min_shared_peaks: Optional[StrictInt] = Field(default=None, alias="minSharedPeaks") + __properties: ClassVar[List[str]] = ["enabled", "minSimilarity", "minSharedPeaks"] + + 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 ZodiacAnalogueNodes 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 ZodiacAnalogueNodes from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "enabled": obj.get("enabled"), + "minSimilarity": obj.get("minSimilarity"), + "minSharedPeaks": obj.get("minSharedPeaks") + }) + return _obj + + diff --git a/client-api_python/generated/PySirius/models/zodiac_library_scoring.py b/client-api_python/generated/PySirius/models/zodiac_library_scoring.py new file mode 100644 index 00000000..87541183 --- /dev/null +++ b/client-api_python/generated/PySirius/models/zodiac_library_scoring.py @@ -0,0 +1,87 @@ +# 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, StrictBool +from typing import Any, ClassVar, Dict, List, Optional +from typing import Optional, Set +from typing_extensions import Self + +class ZodiacLibraryScoring(BaseModel): + """ + ZodiacLibraryScoring + """ # noqa: E501 + enabled: Optional[StrictBool] = None + min_similarity: Optional[float] = Field(default=None, alias="minSimilarity") + __properties: ClassVar[List[str]] = ["enabled", "minSimilarity"] + + 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 ZodiacLibraryScoring 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 ZodiacLibraryScoring from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "enabled": obj.get("enabled"), + "minSimilarity": obj.get("minSimilarity") + }) + return _obj + + diff --git a/client-api_python/generated/PySirius/sirius_api.py b/client-api_python/generated/PySirius/sirius_api.py index 2d6496b4..75ad5fe7 100644 --- a/client-api_python/generated/PySirius/sirius_api.py +++ b/client-api_python/generated/PySirius/sirius_api.py @@ -12,21 +12,33 @@ def __init__(self, api_client): def get_client(self): return self.api_client + def actuator(self): + """returns API endpoint of the ActuatorApi""" + return PySirius.ActuatorApi(self.api_client) + + def compound_statistics(self): + """returns API endpoint of the CompoundsStatisticsApi""" + return PySirius.CompoundStatisticsApi(self.api_client) + def compounds(self): """returns API endpoint of the CompoundsApi""" return PySirius.CompoundsApi(self.api_client) - def jobs(self): - """returns API endpoint of the JobsApi""" - return PySirius.JobsApi(self.api_client) + def feature_statistics(self): + """returns API endpoint of the FeaturesStatisticsApi""" + return PySirius.FeatureStatisticsApi(self.api_client) def features(self): """returns API endpoint of the FeaturesApi""" return PySirius.FeaturesApi(self.api_client) - def gui(self): - """returns API endpoint of the ExperimentalGUIApi""" - return PySirius.GuiApi(self.api_client) + def infos(self): + """returns API endpoint of the InfoApi""" + return PySirius.InfoApi(self.api_client) + + def jobs(self): + """returns API endpoint of the JobsApi""" + return PySirius.JobsApi(self.api_client) def account(self): """returns API endpoint of the LoginAndAccountApi""" @@ -36,14 +48,18 @@ def projects(self): """returns API endpoint of the ProjectsApi""" return PySirius.ProjectsApi(self.api_client) - def infos(self): - """returns API endpoint of the InfoApi""" - return PySirius.InfoApi(self.api_client) + def runs(self): + """returns API endpoint of the RunsApi""" + return PySirius.RunsApi(self.api_client) def databases(self): """returns API endpoint of the SearchableDatabasesApi""" return PySirius.SearchableDatabasesApi(self.api_client) + def tags(self): + """returns API endpoint of the TagsApi""" + return PySirius.TagsApi(self.api_client) + def models(self): """returns the Superclass of all models""" - return PySirius.models + return PySirius.models \ No newline at end of file diff --git a/client-api_python/generated/README.md b/client-api_python/generated/README.md index 6ff03b17..b05174c5 100644 --- a/client-api_python/generated/README.md +++ b/client-api_python/generated/README.md @@ -86,60 +86,81 @@ Class | Method | HTTP request | Description ------------ | ------------- | ------------- | ------------- *ActuatorApi* | [**health**](docs/ActuatorApi.md#health) | **GET** /actuator/health | Actuator web endpoint 'health' *ActuatorApi* | [**shutdown**](docs/ActuatorApi.md#shutdown) | **POST** /actuator/shutdown | Actuator web endpoint 'shutdown' +*CompoundStatisticsApi* | [**compute_compound_fold_changes_experimental**](docs/CompoundStatisticsApi.md#compute_compound_fold_changes_experimental) | **PUT** /api/projects/{projectId}/compounds/statistics/foldchange/compute | [EXPERIMENTAL] Compute the fold change between two groups of runs +*CompoundStatisticsApi* | [**delete_compound_fold_changes_experimental**](docs/CompoundStatisticsApi.md#delete_compound_fold_changes_experimental) | **DELETE** /api/projects/{projectId}/compounds/statistics/foldchanges | [EXPERIMENTAL] Delete fold changes +*CompoundStatisticsApi* | [**get_compound_fold_change_table_experimental**](docs/CompoundStatisticsApi.md#get_compound_fold_change_table_experimental) | **GET** /api/projects/{projectId}/compounds/statistics/foldchanges/stats-table | [EXPERIMENTAL] Get table of all fold changes in the project space +*CompoundStatisticsApi* | [**get_fold_changes_by_compound_experimental**](docs/CompoundStatisticsApi.md#get_fold_changes_by_compound_experimental) | **GET** /api/projects/{projectId}/compounds/statistics/foldchanges/{objectId} | [EXPERIMENTAL] List all fold changes that are associated with an object *CompoundsApi* | [**add_compounds**](docs/CompoundsApi.md#add_compounds) | **POST** /api/projects/{projectId}/compounds | Import Compounds and its contained features. +*CompoundsApi* | [**add_tags_to_compound_experimental**](docs/CompoundsApi.md#add_tags_to_compound_experimental) | **PUT** /api/projects/{projectId}/compounds/tags/{compoundId} | [EXPERIMENTAL] Tags with the same name will be overwritten *CompoundsApi* | [**delete_compound**](docs/CompoundsApi.md#delete_compound) | **DELETE** /api/projects/{projectId}/compounds/{compoundId} | Delete compound (group of ion identities) with the given identifier (and the included features) from the specified project-space. *CompoundsApi* | [**get_compound**](docs/CompoundsApi.md#get_compound) | **GET** /api/projects/{projectId}/compounds/{compoundId} | Get compound (group of ion identities) with the given identifier from the specified project-space. -*CompoundsApi* | [**get_compound_traces_experimental**](docs/CompoundsApi.md#get_compound_traces_experimental) | **GET** /api/projects/{projectId}/compounds/{compoundId}/traces | EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +*CompoundsApi* | [**get_compound_quant_table_experimental**](docs/CompoundsApi.md#get_compound_quant_table_experimental) | **GET** /api/projects/{projectId}/compounds/quant-table | [EXPERIMENTAL] Returns the full quantification table of compounds +*CompoundsApi* | [**get_compound_quant_table_row_experimental**](docs/CompoundsApi.md#get_compound_quant_table_row_experimental) | **GET** /api/projects/{projectId}/compounds/{compoundId}/quant-table-row | [EXPERIMENTAL] Returns a single quantification table row for the given compound +*CompoundsApi* | [**get_compound_traces_experimental**](docs/CompoundsApi.md#get_compound_traces_experimental) | **GET** /api/projects/{projectId}/compounds/{compoundId}/traces | [EXPERIMENTAL] Returns the traces of the given compound *CompoundsApi* | [**get_compounds**](docs/CompoundsApi.md#get_compounds) | **GET** /api/projects/{projectId}/compounds | List of all available compounds (group of ion identities) in the given project-space. +*CompoundsApi* | [**get_compounds_by_group_experimental**](docs/CompoundsApi.md#get_compounds_by_group_experimental) | **GET** /api/projects/{projectId}/compounds/grouped | [EXPERIMENTAL] Get compounds (group of ion identities) by tag group +*CompoundsApi* | [**get_compounds_by_tag_experimental**](docs/CompoundsApi.md#get_compounds_by_tag_experimental) | **GET** /api/projects/{projectId}/compounds/tagged | [EXPERIMENTAL] Get compounds (group of ion identities) by tag *CompoundsApi* | [**get_compounds_paged**](docs/CompoundsApi.md#get_compounds_paged) | **GET** /api/projects/{projectId}/compounds/page | Page of available compounds (group of ion identities) in the given project-space. +*CompoundsApi* | [**get_tags_for_compound_experimental**](docs/CompoundsApi.md#get_tags_for_compound_experimental) | **GET** /api/projects/{projectId}/compounds/tags/{objectId} | [EXPERIMENTAL] Get all tags associated with this Compound +*CompoundsApi* | [**remove_tag_from_compound_experimental**](docs/CompoundsApi.md#remove_tag_from_compound_experimental) | **DELETE** /api/projects/{projectId}/compounds/tags/{compoundId}/{tagName} | [EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space +*FeatureStatisticsApi* | [**compute_aligned_feature_fold_changes_experimental**](docs/FeatureStatisticsApi.md#compute_aligned_feature_fold_changes_experimental) | **PUT** /api/projects/{projectId}/aligned-features/statistics/foldchange/compute | [EXPERIMENTAL] Compute the fold change between two groups of runs +*FeatureStatisticsApi* | [**delete_aligned_feature_fold_changes_experimental**](docs/FeatureStatisticsApi.md#delete_aligned_feature_fold_changes_experimental) | **DELETE** /api/projects/{projectId}/aligned-features/statistics/foldchanges | [EXPERIMENTAL] Delete fold changes +*FeatureStatisticsApi* | [**get_aligned_feature_fold_change_table_experimental**](docs/FeatureStatisticsApi.md#get_aligned_feature_fold_change_table_experimental) | **GET** /api/projects/{projectId}/aligned-features/statistics/foldchanges/stats-table | [EXPERIMENTAL] Get table of all fold changes in the project space +*FeatureStatisticsApi* | [**get_fold_changes_by_aligned_feature_experimental**](docs/FeatureStatisticsApi.md#get_fold_changes_by_aligned_feature_experimental) | **GET** /api/projects/{projectId}/aligned-features/statistics/foldchanges/{objectId} | [EXPERIMENTAL] List all fold changes that are associated with an object *FeaturesApi* | [**add_aligned_features**](docs/FeaturesApi.md#add_aligned_features) | **POST** /api/projects/{projectId}/aligned-features | Import (aligned) features into the project. +*FeaturesApi* | [**add_de_novo_structure_candidate**](docs/FeaturesApi.md#add_de_novo_structure_candidate) | **PUT** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures | [EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. +*FeaturesApi* | [**add_tags_to_aligned_feature_experimental**](docs/FeaturesApi.md#add_tags_to_aligned_feature_experimental) | **PUT** /api/projects/{projectId}/aligned-features/tags/{alignedFeatureId} | [EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project *FeaturesApi* | [**delete_aligned_feature**](docs/FeaturesApi.md#delete_aligned_feature) | **DELETE** /api/projects/{projectId}/aligned-features/{alignedFeatureId} | Delete feature (aligned over runs) with the given identifier from the specified project-space. *FeaturesApi* | [**delete_aligned_features**](docs/FeaturesApi.md#delete_aligned_features) | **PUT** /api/projects/{projectId}/aligned-features/delete | Delete feature (aligned over runs) with the given identifier from the specified project-space. -*FeaturesApi* | [**get_adduct_network_with_merged_traces_experimental**](docs/FeaturesApi.md#get_adduct_network_with_merged_traces_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts | EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +*FeaturesApi* | [**get_adduct_network_with_merged_traces_experimental**](docs/FeaturesApi.md#get_adduct_network_with_merged_traces_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts | [EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network *FeaturesApi* | [**get_aligned_feature**](docs/FeaturesApi.md#get_aligned_feature) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId} | Get feature (aligned over runs) with the given identifier from the specified project-space. +*FeaturesApi* | [**get_aligned_feature_quality_experimental**](docs/FeaturesApi.md#get_aligned_feature_quality_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report | [EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId) *FeaturesApi* | [**get_aligned_features**](docs/FeaturesApi.md#get_aligned_features) | **GET** /api/projects/{projectId}/aligned-features | Get all available features (aligned over runs) in the given project-space. +*FeaturesApi* | [**get_aligned_features_by_group_experimental**](docs/FeaturesApi.md#get_aligned_features_by_group_experimental) | **GET** /api/projects/{projectId}/aligned-features/grouped | [EXPERIMENTAL] Get features (aligned over runs) by tag group +*FeaturesApi* | [**get_aligned_features_by_tag_experimental**](docs/FeaturesApi.md#get_aligned_features_by_tag_experimental) | **GET** /api/projects/{projectId}/aligned-features/tagged | [EXPERIMENTAL] Get features (aligned over runs) by tag *FeaturesApi* | [**get_aligned_features_paged**](docs/FeaturesApi.md#get_aligned_features_paged) | **GET** /api/projects/{projectId}/aligned-features/page | Get all available features (aligned over runs) in the given project-space. -*FeaturesApi* | [**get_aligned_features_quality_experimental**](docs/FeaturesApi.md#get_aligned_features_quality_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report | EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. -*FeaturesApi* | [**get_best_matching_compound_classes**](docs/FeaturesApi.md#get_best_matching_compound_classes) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes | Best matching compound classes, Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, +*FeaturesApi* | [**get_best_matching_compound_classes**](docs/FeaturesApi.md#get_best_matching_compound_classes) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes | Return Best matching compound classes for given formulaId *FeaturesApi* | [**get_canopus_prediction**](docs/FeaturesApi.md#get_canopus_prediction) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/canopus-prediction | All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities, *FeaturesApi* | [**get_de_novo_structure_candidates**](docs/FeaturesApi.md#get_de_novo_structure_candidates) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures | List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. *FeaturesApi* | [**get_de_novo_structure_candidates_by_formula**](docs/FeaturesApi.md#get_de_novo_structure_candidates_by_formula) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures | List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. *FeaturesApi* | [**get_de_novo_structure_candidates_by_formula_paged**](docs/FeaturesApi.md#get_de_novo_structure_candidates_by_formula_paged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures/page | Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. *FeaturesApi* | [**get_de_novo_structure_candidates_paged**](docs/FeaturesApi.md#get_de_novo_structure_candidates_paged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures/page | Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. -*FeaturesApi* | [**get_fingerprint_prediction**](docs/FeaturesApi.md#get_fingerprint_prediction) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint | Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier This fingerprint is used to perform structure database search and predict compound classes. -*FeaturesApi* | [**get_formula_annotated_ms_ms_data**](docs/FeaturesApi.md#get_formula_annotated_ms_ms_data) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata | Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. -*FeaturesApi* | [**get_formula_annotated_spectrum**](docs/FeaturesApi.md#get_formula_annotated_spectrum) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum | Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. +*FeaturesApi* | [**get_feature_quant_table_experimental**](docs/FeaturesApi.md#get_feature_quant_table_experimental) | **GET** /api/projects/{projectId}/aligned-features/quant-table | [EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId) +*FeaturesApi* | [**get_fingerprint_prediction**](docs/FeaturesApi.md#get_fingerprint_prediction) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint | Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId) +*FeaturesApi* | [**get_formula_annotated_ms_ms_data**](docs/FeaturesApi.md#get_formula_annotated_ms_ms_data) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata | Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId +*FeaturesApi* | [**get_formula_annotated_spectrum**](docs/FeaturesApi.md#get_formula_annotated_spectrum) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum | Returns a fragmentation spectrum (e *FeaturesApi* | [**get_formula_candidate**](docs/FeaturesApi.md#get_formula_candidate) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId} | FormulaResultContainers for the given 'formulaId' with minimal information. *FeaturesApi* | [**get_formula_candidates**](docs/FeaturesApi.md#get_formula_candidates) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas | List of FormulaResultContainers available for this feature with minimal information. *FeaturesApi* | [**get_formula_candidates_paged**](docs/FeaturesApi.md#get_formula_candidates_paged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/page | Page of FormulaResultContainers available for this feature with minimal information. -*FeaturesApi* | [**get_frag_tree**](docs/FeaturesApi.md#get_frag_tree) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree | Returns fragmentation tree (SIRIUS) for the given formula result identifier This tree is used to rank formula candidates (treeScore). -*FeaturesApi* | [**get_isotope_pattern_annotation**](docs/FeaturesApi.md#get_isotope_pattern_annotation) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern | Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. -*FeaturesApi* | [**get_lipid_annotation**](docs/FeaturesApi.md#get_lipid_annotation) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation | Returns Lipid annotation (ElGordo) for the given formula result identifier. +*FeaturesApi* | [**get_frag_tree**](docs/FeaturesApi.md#get_frag_tree) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree | Returns fragmentation tree (SIRIUS) for the given formula result identifier +*FeaturesApi* | [**get_isotope_pattern_annotation**](docs/FeaturesApi.md#get_isotope_pattern_annotation) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern | Returns Isotope pattern information for given formulaId +*FeaturesApi* | [**get_lipid_annotation**](docs/FeaturesApi.md#get_lipid_annotation) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation | Returns Lipid annotation (ElGordo) for the given formulaId *FeaturesApi* | [**get_ms_data**](docs/FeaturesApi.md#get_ms_data) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/ms-data | Mass Spec data (input data) for the given 'alignedFeatureId' . -*FeaturesApi* | [**get_quantification_experimental**](docs/FeaturesApi.md#get_quantification_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/quantification | EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. -*FeaturesApi* | [**get_spectral_library_match**](docs/FeaturesApi.md#get_spectral_library_match) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId} | List of spectral library matches for the given 'alignedFeatureId'. +*FeaturesApi* | [**get_quant_table_row_experimental**](docs/FeaturesApi.md#get_quant_table_row_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/quant-table-row | [EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId) +*FeaturesApi* | [**get_spectral_library_match**](docs/FeaturesApi.md#get_spectral_library_match) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId} | Spectral library match for the given 'alignedFeatureId'. *FeaturesApi* | [**get_spectral_library_matches**](docs/FeaturesApi.md#get_spectral_library_matches) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches | List of spectral library matches for the given 'alignedFeatureId'. *FeaturesApi* | [**get_spectral_library_matches_paged**](docs/FeaturesApi.md#get_spectral_library_matches_paged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/page | Page of spectral library matches for the given 'alignedFeatureId'. *FeaturesApi* | [**get_spectral_library_matches_summary**](docs/FeaturesApi.md#get_spectral_library_matches_summary) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/summary | Summarize matched reference spectra for the given 'alignedFeatureId'. -*FeaturesApi* | [**get_structure_annotated_ms_data_experimental**](docs/FeaturesApi.md#get_structure_annotated_ms_data_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata | EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. -*FeaturesApi* | [**get_structure_annotated_spectrum_experimental**](docs/FeaturesApi.md#get_structure_annotated_spectrum_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum | EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. +*FeaturesApi* | [**get_structure_annotated_ms_data_experimental**](docs/FeaturesApi.md#get_structure_annotated_ms_data_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata | [EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey +*FeaturesApi* | [**get_structure_annotated_spectral_library_match_experimental**](docs/FeaturesApi.md#get_structure_annotated_spectral_library_match_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}/annotated | [EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations +*FeaturesApi* | [**get_structure_annotated_spectrum_experimental**](docs/FeaturesApi.md#get_structure_annotated_spectrum_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum | [EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey *FeaturesApi* | [**get_structure_candidates**](docs/FeaturesApi.md#get_structure_candidates) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures | List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. *FeaturesApi* | [**get_structure_candidates_by_formula**](docs/FeaturesApi.md#get_structure_candidates_by_formula) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures | List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. *FeaturesApi* | [**get_structure_candidates_by_formula_paged**](docs/FeaturesApi.md#get_structure_candidates_by_formula_paged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures/page | Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. *FeaturesApi* | [**get_structure_candidates_paged**](docs/FeaturesApi.md#get_structure_candidates_paged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures/page | Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. -*FeaturesApi* | [**get_traces_experimental**](docs/FeaturesApi.md#get_traces_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces | EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. -*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. +*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 *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. *JobsApi* | [**delete_job_config**](docs/JobsApi.md#delete_job_config) | **DELETE** /api/job-configs/{name} | Delete job configuration with given name. *JobsApi* | [**delete_jobs**](docs/JobsApi.md#delete_jobs) | **DELETE** /api/projects/{projectId}/jobs | * Delete ALL jobs. +*JobsApi* | [**get_command**](docs/JobsApi.md#get_command) | **POST** /api/job-configs/get-command | Get a CLI command for the given job configuration. *JobsApi* | [**get_default_job_config**](docs/JobsApi.md#get_default_job_config) | **GET** /api/default-job-config | Request default job configuration *JobsApi* | [**get_job**](docs/JobsApi.md#get_job) | **GET** /api/projects/{projectId}/jobs/{jobId} | Get job information and its current state and progress (if available). *JobsApi* | [**get_job_config**](docs/JobsApi.md#get_job_config) | **GET** /api/job-configs/{name} | Request job configuration with given name. -*JobsApi* | [**get_job_config_names**](docs/JobsApi.md#get_job_config_names) | **GET** /api/job-config-names | DEPRECATED: use /job-configs to get all configs with names. +*JobsApi* | [**get_job_config_names**](docs/JobsApi.md#get_job_config_names) | **GET** /api/job-config-names | [DEPRECATED] Get all (non-default) job configuration names *JobsApi* | [**get_job_configs**](docs/JobsApi.md#get_job_configs) | **GET** /api/job-configs | Request all available job configurations *JobsApi* | [**get_jobs**](docs/JobsApi.md#get_jobs) | **GET** /api/projects/{projectId}/jobs | Get List of all available jobs with information such as current state and progress (if available). *JobsApi* | [**get_jobs_paged**](docs/JobsApi.md#get_jobs_paged) | **GET** /api/projects/{projectId}/jobs/page | Get Page of jobs with information such as current state and progress (if available). @@ -156,7 +177,7 @@ Class | Method | HTTP request | Description *LoginAndAccountApi* | [**open_portal**](docs/LoginAndAccountApi.md#open_portal) | **GET** /api/account/openPortal | Open User portal in browser. *LoginAndAccountApi* | [**select_subscription**](docs/LoginAndAccountApi.md#select_subscription) | **PUT** /api/account/subscriptions/select-active | Select a subscription as active subscription to be used for computations. *LoginAndAccountApi* | [**sign_up**](docs/LoginAndAccountApi.md#sign_up) | **GET** /api/account/signUp | Open SignUp window in system browser and return signUp link. -*ProjectsApi* | [**close_project**](docs/ProjectsApi.md#close_project) | **DELETE** /api/projects/{projectId} | Close project-space and remove it from application +*ProjectsApi* | [**close_project**](docs/ProjectsApi.md#close_project) | **DELETE** /api/projects/{projectId} | Close project-space and remove it from the application *ProjectsApi* | [**create_project**](docs/ProjectsApi.md#create_project) | **POST** /api/projects/{projectId} | Create and open a new project-space at given location and make it accessible via the given projectId. *ProjectsApi* | [**get_canopus_classy_fire_data**](docs/ProjectsApi.md#get_canopus_classy_fire_data) | **GET** /api/projects/{projectId}/cf-data | Get CANOPUS prediction vector definition for ClassyFire classes *ProjectsApi* | [**get_canopus_npc_data**](docs/ProjectsApi.md#get_canopus_npc_data) | **GET** /api/projects/{projectId}/npc-data | Get CANOPUS prediction vector definition for NPC classes @@ -168,6 +189,14 @@ Class | Method | HTTP request | Description *ProjectsApi* | [**import_preprocessed_data**](docs/ProjectsApi.md#import_preprocessed_data) | **POST** /api/projects/{projectId}/import/preprocessed-data-files | Import already preprocessed ms/ms data from various formats into the specified project Possible formats (ms, mgf, cef, msp) *ProjectsApi* | [**import_preprocessed_data_as_job**](docs/ProjectsApi.md#import_preprocessed_data_as_job) | **POST** /api/projects/{projectId}/import/preprocessed-data-files-job | Import ms/ms data from the given format into the specified project-space as background job. *ProjectsApi* | [**open_project**](docs/ProjectsApi.md#open_project) | **PUT** /api/projects/{projectId} | Open an existing project-space and make it accessible via the given projectId. +*RunsApi* | [**add_tags_to_run_experimental**](docs/RunsApi.md#add_tags_to_run_experimental) | **PUT** /api/projects/{projectId}/runs/tags/{runId} | [EXPERIMENTAL] Add tags to a run in the project +*RunsApi* | [**compute_fold_change_for_blank_subtraction**](docs/RunsApi.md#compute_fold_change_for_blank_subtraction) | **PUT** /api/projects/{projectId}/runs/blanksubtract/compute | **EXPERIMENTAL** Compute the fold changes that are required for the fold change filter +*RunsApi* | [**get_run_experimental**](docs/RunsApi.md#get_run_experimental) | **GET** /api/projects/{projectId}/runs/{runId} | [EXPERIMENTAL] Get run with the given identifier from the specified project-space +*RunsApi* | [**get_run_page_experimental**](docs/RunsApi.md#get_run_page_experimental) | **GET** /api/projects/{projectId}/runs/page | [EXPERIMENTAL] Get all available runs in the given project-space +*RunsApi* | [**get_runs_by_group_experimental**](docs/RunsApi.md#get_runs_by_group_experimental) | **GET** /api/projects/{projectId}/runs/grouped | [EXPERIMENTAL] Get runs by tag group +*RunsApi* | [**get_runs_by_tag_experimental**](docs/RunsApi.md#get_runs_by_tag_experimental) | **GET** /api/projects/{projectId}/runs/tagged | [EXPERIMENTAL] Get runs by tag +*RunsApi* | [**get_tags_for_run_experimental**](docs/RunsApi.md#get_tags_for_run_experimental) | **GET** /api/projects/{projectId}/runs/tags/{objectId} | [EXPERIMENTAL] Get all tags associated with this Run +*RunsApi* | [**remove_tag_from_run_experimental**](docs/RunsApi.md#remove_tag_from_run_experimental) | **DELETE** /api/projects/{projectId}/runs/tags/{runId}/{tagName} | [EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space *SearchableDatabasesApi* | [**add_databases**](docs/SearchableDatabasesApi.md#add_databases) | **POST** /api/databases | DEPRECATED: this endpoint is based on local file paths and will likely be replaced in future versions of this API. *SearchableDatabasesApi* | [**create_database**](docs/SearchableDatabasesApi.md#create_database) | **POST** /api/databases/{databaseId} | *SearchableDatabasesApi* | [**get_custom_databases**](docs/SearchableDatabasesApi.md#get_custom_databases) | **GET** /api/databases/custom | @@ -177,6 +206,15 @@ Class | Method | HTTP request | Description *SearchableDatabasesApi* | [**import_into_database**](docs/SearchableDatabasesApi.md#import_into_database) | **POST** /api/databases/{databaseId}/import/from-files | Start import of structure and spectra files into the specified database. *SearchableDatabasesApi* | [**remove_database**](docs/SearchableDatabasesApi.md#remove_database) | **DELETE** /api/databases/{databaseId} | *SearchableDatabasesApi* | [**update_database**](docs/SearchableDatabasesApi.md#update_database) | **PUT** /api/databases/{databaseId} | +*TagsApi* | [**add_group**](docs/TagsApi.md#add_group) | **POST** /api/projects/{projectId}/groups/{groupName} | [EXPERIMENTAL] Group tags in the project +*TagsApi* | [**add_possible_values_to_tag_definition**](docs/TagsApi.md#add_possible_values_to_tag_definition) | **PATCH** /api/projects/{projectId}/tags/{tagName} | [EXPERIMENTAL] Add a possible value to the tag definition in the project +*TagsApi* | [**create_tags**](docs/TagsApi.md#create_tags) | **PUT** /api/projects/{projectId}/tags | [EXPERIMENTAL] Add tags to the project +*TagsApi* | [**delete_group**](docs/TagsApi.md#delete_group) | **DELETE** /api/projects/{projectId}/groups/{groupName} | [EXPERIMENTAL] Delete tag groups with the given name from the specified project-space +*TagsApi* | [**delete_tag**](docs/TagsApi.md#delete_tag) | **DELETE** /api/projects/{projectId}/tags/{tagName} | [EXPERIMENTAL] Delete tag definition with the given name from the specified project-space +*TagsApi* | [**get_group_by_name**](docs/TagsApi.md#get_group_by_name) | **GET** /api/projects/{projectId}/groups/{groupName} | [EXPERIMENTAL] Get tag group by name in the given project-space +*TagsApi* | [**get_groups**](docs/TagsApi.md#get_groups) | **GET** /api/projects/{projectId}/groups | [EXPERIMENTAL] Get all tag based groups in the given project-space +*TagsApi* | [**get_tag**](docs/TagsApi.md#get_tag) | **GET** /api/projects/{projectId}/tags/{tagName} | [EXPERIMENTAL] Get tag definition by its name in the given project-space +*TagsApi* | [**get_tags**](docs/TagsApi.md#get_tags) | **GET** /api/projects/{projectId}/tags | [EXPERIMENTAL] Get all tag definitions in the given project-space ## Documentation For Models @@ -186,16 +224,21 @@ Class | Method | HTTP request | Description - [AdductEdgeExperimental](docs/AdductEdgeExperimental.md) - [AdductNetworkExperimental](docs/AdductNetworkExperimental.md) - [AdductNodeExperimental](docs/AdductNodeExperimental.md) + - [AggregationType](docs/AggregationType.md) - [AlignedFeature](docs/AlignedFeature.md) - [AlignedFeatureOptField](docs/AlignedFeatureOptField.md) - [AlignedFeatureQualityExperimental](docs/AlignedFeatureQualityExperimental.md) + - [AllowedFeatures](docs/AllowedFeatures.md) - [AnnotatedMsMsData](docs/AnnotatedMsMsData.md) - [AnnotatedPeak](docs/AnnotatedPeak.md) - [AnnotatedSpectrum](docs/AnnotatedSpectrum.md) + - [ApiVersion](docs/ApiVersion.md) - [Axes](docs/Axes.md) - [BackgroundComputationsStateEvent](docs/BackgroundComputationsStateEvent.md) - [BasicSpectrum](docs/BasicSpectrum.md) - [BinaryFingerprint](docs/BinaryFingerprint.md) + - [BioTransformerParameters](docs/BioTransformerParameters.md) + - [BioTransformerSequenceStep](docs/BioTransformerSequenceStep.md) - [Canopus](docs/Canopus.md) - [CanopusPrediction](docs/CanopusPrediction.md) - [Category](docs/Category.md) @@ -215,6 +258,7 @@ Class | Method | HTTP request | Description - [ConsensusAnnotationsDeNovo](docs/ConsensusAnnotationsDeNovo.md) - [ConsensusCriterionCSI](docs/ConsensusCriterionCSI.md) - [ConsensusCriterionDeNovo](docs/ConsensusCriterionDeNovo.md) + - [Cyp450Mode](docs/Cyp450Mode.md) - [DBLink](docs/DBLink.md) - [DataImportEvent](docs/DataImportEvent.md) - [DataQuality](docs/DataQuality.md) @@ -222,11 +266,11 @@ Class | Method | HTTP request | Description - [FeatureAnnotations](docs/FeatureAnnotations.md) - [FeatureImport](docs/FeatureImport.md) - [FingerprintPrediction](docs/FingerprintPrediction.md) + - [FoldChange](docs/FoldChange.md) - [FormulaCandidate](docs/FormulaCandidate.md) - [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) @@ -242,18 +286,22 @@ Class | Method | HTTP request | Description - [LicenseInfo](docs/LicenseInfo.md) - [LipidAnnotation](docs/LipidAnnotation.md) - [LossEdge](docs/LossEdge.md) + - [MetabolicTransformation](docs/MetabolicTransformation.md) - [MsData](docs/MsData.md) - [MsNovelist](docs/MsNovelist.md) + - [P2Mode](docs/P2Mode.md) - [PageMetadata](docs/PageMetadata.md) - [PagedModelAlignedFeature](docs/PagedModelAlignedFeature.md) - [PagedModelCompound](docs/PagedModelCompound.md) - [PagedModelFormulaCandidate](docs/PagedModelFormulaCandidate.md) - [PagedModelJob](docs/PagedModelJob.md) + - [PagedModelRun](docs/PagedModelRun.md) - [PagedModelSpectralLibraryMatch](docs/PagedModelSpectralLibraryMatch.md) - [PagedModelStructureCandidateFormula](docs/PagedModelStructureCandidateFormula.md) - [PagedModelStructureCandidateScored](docs/PagedModelStructureCandidateScored.md) - [ParentPeak](docs/ParentPeak.md) - [PeakAnnotation](docs/PeakAnnotation.md) + - [PeakPair](docs/PeakPair.md) - [ProjectChangeEvent](docs/ProjectChangeEvent.md) - [ProjectEventType](docs/ProjectEventType.md) - [ProjectInfo](docs/ProjectInfo.md) @@ -261,12 +309,16 @@ Class | Method | HTTP request | Description - [ProjectType](docs/ProjectType.md) - [QualityItem](docs/QualityItem.md) - [QualityWeight](docs/QualityWeight.md) - - [QuantificationColumnType](docs/QuantificationColumnType.md) - - [QuantificationMeasure](docs/QuantificationMeasure.md) - - [QuantificationRowType](docs/QuantificationRowType.md) - - [QuantificationTableExperimental](docs/QuantificationTableExperimental.md) + - [QuantMeasure](docs/QuantMeasure.md) + - [QuantRowType](docs/QuantRowType.md) + - [QuantTableExperimental](docs/QuantTableExperimental.md) + - [Run](docs/Run.md) + - [RunOptField](docs/RunOptField.md) + - [SampleTypeFoldChangeRequest](docs/SampleTypeFoldChangeRequest.md) - [SearchableDatabase](docs/SearchableDatabase.md) - [SearchableDatabaseParameters](docs/SearchableDatabaseParameters.md) + - [SecurityContext](docs/SecurityContext.md) + - [SecurityContextPrincipal](docs/SecurityContextPrincipal.md) - [SimplePeak](docs/SimplePeak.md) - [Sirius](docs/Sirius.md) - [Solver](docs/Solver.md) @@ -274,8 +326,12 @@ Class | Method | HTTP request | Description - [SpectralLibraryMatchOptField](docs/SpectralLibraryMatchOptField.md) - [SpectralLibraryMatchSummary](docs/SpectralLibraryMatchSummary.md) - [SpectralLibrarySearch](docs/SpectralLibrarySearch.md) + - [SpectralMatchType](docs/SpectralMatchType.md) - [SpectralMatchingType](docs/SpectralMatchingType.md) - [SpectrumAnnotation](docs/SpectrumAnnotation.md) + - [SpectrumType](docs/SpectrumType.md) + - [StatisticsTable](docs/StatisticsTable.md) + - [StatisticsType](docs/StatisticsType.md) - [StoredJobSubmission](docs/StoredJobSubmission.md) - [StructureCandidate](docs/StructureCandidate.md) - [StructureCandidateFormula](docs/StructureCandidateFormula.md) @@ -284,6 +340,10 @@ Class | Method | HTTP request | Description - [StructureDbSearch](docs/StructureDbSearch.md) - [Subscription](docs/Subscription.md) - [SubscriptionConsumables](docs/SubscriptionConsumables.md) + - [Tag](docs/Tag.md) + - [TagDefinition](docs/TagDefinition.md) + - [TagDefinitionImport](docs/TagDefinitionImport.md) + - [TagGroup](docs/TagGroup.md) - [Term](docs/Term.md) - [Timeout](docs/Timeout.md) - [TraceAnnotationExperimental](docs/TraceAnnotationExperimental.md) @@ -291,9 +351,13 @@ Class | Method | HTTP request | Description - [TraceExperimental](docs/TraceExperimental.md) - [TraceSetExperimental](docs/TraceSetExperimental.md) - [UseHeuristic](docs/UseHeuristic.md) + - [ValueType](docs/ValueType.md) + - [WebServerNamespace](docs/WebServerNamespace.md) - [Zodiac](docs/Zodiac.md) + - [ZodiacAnalogueNodes](docs/ZodiacAnalogueNodes.md) - [ZodiacEdgeFilterThresholds](docs/ZodiacEdgeFilterThresholds.md) - [ZodiacEpochs](docs/ZodiacEpochs.md) + - [ZodiacLibraryScoring](docs/ZodiacLibraryScoring.md) diff --git a/client-api_python/generated/docs/ActuatorApi.md b/client-api_python/generated/docs/ActuatorApi.md index 9f750cee..88939e25 100644 --- a/client-api_python/generated/docs/ActuatorApi.md +++ b/client-api_python/generated/docs/ActuatorApi.md @@ -59,7 +59,7 @@ No authorization required ### HTTP request headers - **Content-Type**: Not defined - - **Accept**: application/vnd.spring-boot.actuator.v3+json, application/json, application/vnd.spring-boot.actuator.v2+json + - **Accept**: application/vnd.spring-boot.actuator.v3+json, application/vnd.spring-boot.actuator.v2+json, application/json ### HTTP response details @@ -70,7 +70,7 @@ No authorization required [[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) # **shutdown** -> object shutdown() +> shutdown() Actuator web endpoint 'shutdown' @@ -96,9 +96,7 @@ with PySirius.ApiClient(configuration) as api_client: try: # Actuator web endpoint 'shutdown' - api_response = api_instance.shutdown() - print("The response of ActuatorApi->shutdown:\n") - pprint(api_response) + api_instance.shutdown() except Exception as e: print("Exception when calling ActuatorApi->shutdown: %s\n" % e) ``` @@ -111,7 +109,7 @@ This endpoint does not need any parameter. ### Return type -**object** +void (empty response body) ### Authorization @@ -120,13 +118,14 @@ No authorization required ### HTTP request headers - **Content-Type**: Not defined - - **Accept**: application/vnd.spring-boot.actuator.v3+json, application/json, application/vnd.spring-boot.actuator.v2+json + - **Accept**: Not defined ### HTTP response details | Status code | Description | Response headers | |-------------|-------------|------------------| -**200** | OK | - | +**204** | No Content | - | +**400** | Bad Request | - | [[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/AggregationType.md b/client-api_python/generated/docs/AggregationType.md new file mode 100644 index 00000000..1751dc71 --- /dev/null +++ b/client-api_python/generated/docs/AggregationType.md @@ -0,0 +1,14 @@ +# AggregationType + + +## Enum + +* `AVG` (value: `'AVG'`) + +* `MIN` (value: `'MIN'`) + +* `MAX` (value: `'MAX'`) + +[[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_python/generated/docs/AlignedFeature.md b/client-api_python/generated/docs/AlignedFeature.md index 50ad95aa..ea6fc705 100644 --- a/client-api_python/generated/docs/AlignedFeature.md +++ b/client-api_python/generated/docs/AlignedFeature.md @@ -16,14 +16,15 @@ Name | Type | Description | Notes **rt_start_seconds** | **float** | | [optional] **rt_end_seconds** | **float** | | [optional] **rt_apex_seconds** | **float** | | [optional] -**quality** | [**DataQuality**](DataQuality.md) | | [optional] +**quality** | [**DataQuality**](DataQuality.md) | Quality of this feature. | [optional] **has_ms1** | **bool** | If true, the feature has at lease one MS1 spectrum | [optional] **has_ms_ms** | **bool** | If true, the feature has at lease one MS/MS spectrum | [optional] -**ms_data** | [**MsData**](MsData.md) | | [optional] -**top_annotations** | [**FeatureAnnotations**](FeatureAnnotations.md) | | [optional] -**top_annotations_de_novo** | [**FeatureAnnotations**](FeatureAnnotations.md) | | [optional] +**ms_data** | [**MsData**](MsData.md) | Mass Spec data of this feature (input data) | [optional] +**top_annotations** | [**FeatureAnnotations**](FeatureAnnotations.md) | Top annotations of this feature. If a CSI:FingerID structureAnnotation is available, the FormulaCandidate that corresponds to the structureAnnotation is returned. Otherwise, it's the FormulaCandidate with the highest SiriusScore is returned. CANOPUS Compound classes correspond to the FormulaCandidate no matter how it was selected Null if it was not requested und non-null otherwise. | [optional] +**top_annotations_de_novo** | [**FeatureAnnotations**](FeatureAnnotations.md) | Top de novo annotations of this feature. The FormulaCandidate with the highest SiriusScore is returned. MSNovelist structureAnnotation and CANOPUS compoundClasses correspond to the FormulaCandidate. Null if it was not requested und non-null otherwise. | [optional] **computing** | **bool** | Write lock for this feature. If the feature is locked no write operations are possible. True if any computation is modifying this feature or its results | [optional] -**computed_tools** | [**ComputedSubtools**](ComputedSubtools.md) | | [optional] +**computed_tools** | [**ComputedSubtools**](ComputedSubtools.md) | 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. | [optional] +**tags** | [**Dict[str, Tag]**](Tag.md) | Key: tagName, value: tag | [optional] ## Example diff --git a/client-api_python/generated/docs/AlignedFeatureOptField.md b/client-api_python/generated/docs/AlignedFeatureOptField.md index 63108853..dda49997 100644 --- a/client-api_python/generated/docs/AlignedFeatureOptField.md +++ b/client-api_python/generated/docs/AlignedFeatureOptField.md @@ -7,12 +7,16 @@ * `MSDATA` (value: `'msData'`) +* `TOPANNOTATIONSSUMMARY` (value: `'topAnnotationsSummary'`) + * `TOPANNOTATIONS` (value: `'topAnnotations'`) * `TOPANNOTATIONSDENOVO` (value: `'topAnnotationsDeNovo'`) * `COMPUTEDTOOLS` (value: `'computedTools'`) +* `TAGS` (value: `'tags'`) + [[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_python/generated/docs/AlignedFeatureQualityExperimental.md b/client-api_python/generated/docs/AlignedFeatureQualityExperimental.md index e095cfa1..9059008b 100644 --- a/client-api_python/generated/docs/AlignedFeatureQualityExperimental.md +++ b/client-api_python/generated/docs/AlignedFeatureQualityExperimental.md @@ -7,7 +7,7 @@ EXPERIMENTAL: This schema is experimental and may be changed (or even removed) w Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **aligned_feature_id** | **str** | Id of the feature (aligned over runs) this quality information belongs to. | -**overall_quality** | [**DataQuality**](DataQuality.md) | | +**overall_quality** | [**DataQuality**](DataQuality.md) | Overall Quality | **categories** | [**Dict[str, Category]**](Category.md) | Contains all pre-computation quality information that belong to this feature (aligned over runs), such as information about the quality of the peak shape, MS2 spectrum etc., | ## Example diff --git a/client-api_python/generated/docs/AllowedFeatures.md b/client-api_python/generated/docs/AllowedFeatures.md new file mode 100644 index 00000000..24cbd0e5 --- /dev/null +++ b/client-api_python/generated/docs/AllowedFeatures.md @@ -0,0 +1,34 @@ +# AllowedFeatures + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**cli** | **bool** | | [optional] +**api** | **bool** | | [optional] +**de_novo** | **bool** | | [optional] +**import_ms_runs** | **bool** | | [optional] +**import_peak_lists** | **bool** | | [optional] +**import_cef** | **bool** | | [optional] + +## Example + +```python +from PySirius.models.allowed_features import AllowedFeatures + +# TODO update the JSON string below +json = "{}" +# create an instance of AllowedFeatures from a JSON string +allowed_features_instance = AllowedFeatures.from_json(json) +# print the JSON string representation of the object +print(AllowedFeatures.to_json()) + +# convert the object into a dict +allowed_features_dict = allowed_features_instance.to_dict() +# create an instance of AllowedFeatures from a dict +allowed_features_from_dict = AllowedFeatures.from_dict(allowed_features_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_python/generated/docs/AnnotatedSpectrum.md b/client-api_python/generated/docs/AnnotatedSpectrum.md index 6f191bfb..1ee2eecf 100644 --- a/client-api_python/generated/docs/AnnotatedSpectrum.md +++ b/client-api_python/generated/docs/AnnotatedSpectrum.md @@ -12,9 +12,15 @@ Name | Type | Description | Notes **instrument** | **str** | Instrument information. | [optional] **precursor_mz** | **float** | Precursor m/z of the MS/MS spectrum Null for spectra where precursor m/z is not applicable | [optional] **scan_number** | **int** | Scan number of the spectrum. Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra) | [optional] +**cosine_query** | **bool** | True if spectrum is in cosine query normalized format. Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra. | [default to False] +**precursor_peak** | [**SimplePeak**](SimplePeak.md) | A separate precursor peak field to either mark the precursor in the peaklist or provide the precursor peak separately from the spectrum in case the spectrum is in a preprocessed form where the precursor peak has been removed for library matching. NULL if the spectrum does not contain the precursor peak. | [optional] **peaks** | [**List[AnnotatedPeak]**](AnnotatedPeak.md) | The peaks of this spectrum which might contain additional annotations such as molecular formulas. | -**abs_intensity_factor** | **float** | Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra) | [optional] -**spectrum_annotation** | [**SpectrumAnnotation**](SpectrumAnnotation.md) | | [optional] +**abs_intensity_factor** | **float** | Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra) <p> DEPRECATED: Spectra are always returned with raw intensities. Use provided normalization factors to normalize on the fly. | [optional] +**max_norm_factor** | **float** | Factor to convert absolute intensities to MAX norm. | [optional] +**sum_norm_factor** | **float** | Factor to convert absolute intensities to SUM norm. | [optional] +**l2_norm_factor** | **float** | Factor to convert absolute intensities to L2 (Euclidean) norm. | [optional] +**first_peak_norm_factor** | **float** | Factor to convert absolute intensities to normalize intensities by first peak intensity. | [optional] +**spectrum_annotation** | [**SpectrumAnnotation**](SpectrumAnnotation.md) | Optional Annotations of this spectrum. | [optional] ## Example diff --git a/client-api_python/generated/docs/QuantificationColumnType.md b/client-api_python/generated/docs/ApiVersion.md similarity index 74% rename from client-api_python/generated/docs/QuantificationColumnType.md rename to client-api_python/generated/docs/ApiVersion.md index b10cc2e8..54358a69 100644 --- a/client-api_python/generated/docs/QuantificationColumnType.md +++ b/client-api_python/generated/docs/ApiVersion.md @@ -1,9 +1,11 @@ -# QuantificationColumnType +# ApiVersion ## Enum -* `SAMPLES` (value: `'SAMPLES'`) +* `V2` (value: `'V2'`) + +* `V3` (value: `'V3'`) [[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_python/generated/docs/BasicSpectrum.md b/client-api_python/generated/docs/BasicSpectrum.md index d14327de..1bf6a7b5 100644 --- a/client-api_python/generated/docs/BasicSpectrum.md +++ b/client-api_python/generated/docs/BasicSpectrum.md @@ -11,8 +11,14 @@ Name | Type | Description | Notes **instrument** | **str** | Instrument information. | [optional] **precursor_mz** | **float** | Precursor m/z of the MS/MS spectrum Null for spectra where precursor m/z is not applicable | [optional] **scan_number** | **int** | Scan number of the spectrum. Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra) | [optional] +**cosine_query** | **bool** | True if spectrum is in cosine query normalized format. Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra. | [default to False] +**precursor_peak** | [**SimplePeak**](SimplePeak.md) | A separate precursor peak field to either mark the precursor in the peaklist or provide the precursor peak separately from the spectrum in case the spectrum is in a preprocessed form where the precursor peak has been removed for library matching. NULL if the spectrum does not contain the precursor peak. | [optional] **peaks** | [**List[SimplePeak]**](SimplePeak.md) | The peaks of this spectrum which might contain additional annotations such as molecular formulas. | -**abs_intensity_factor** | **float** | Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra) | [optional] +**abs_intensity_factor** | **float** | Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra) <p> DEPRECATED: Spectra are always returned with raw intensities. Use provided normalization factors to normalize on the fly. | [optional] +**max_norm_factor** | **float** | Factor to convert absolute intensities to MAX norm. | [optional] +**sum_norm_factor** | **float** | Factor to convert absolute intensities to SUM norm. | [optional] +**l2_norm_factor** | **float** | Factor to convert absolute intensities to L2 (Euclidean) norm. | [optional] +**first_peak_norm_factor** | **float** | Factor to convert absolute intensities to normalize intensities by first peak intensity. | [optional] ## Example diff --git a/client-api_python/generated/docs/BioTransformerParameters.md b/client-api_python/generated/docs/BioTransformerParameters.md new file mode 100644 index 00000000..7f5daae4 --- /dev/null +++ b/client-api_python/generated/docs/BioTransformerParameters.md @@ -0,0 +1,32 @@ +# BioTransformerParameters + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**cyp450_mode** | [**Cyp450Mode**](Cyp450Mode.md) | Specify the Phase I/Cyp450 mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that require the Cyp450 mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified that do not need the Cyp450 mode. | +**p2_mode** | [**P2Mode**](P2Mode.md) | Specify the Phase II mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that require the Phase II mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified that do not need the Phase II mode. | +**use_db** | **bool** | \"Specify if you want to enable the retrieving from database (HMDB) feature.\" | [optional] [default to True] +**bio_transformer_sequence_steps** | [**List[BioTransformerSequenceStep]**](BioTransformerSequenceStep.md) | Specify BioTransformerSequenceSteps to be applied to input structures. MultiStep MetabolicTransformations can only be used as singletons (list size of one). | + +## Example + +```python +from PySirius.models.bio_transformer_parameters import BioTransformerParameters + +# TODO update the JSON string below +json = "{}" +# create an instance of BioTransformerParameters from a JSON string +bio_transformer_parameters_instance = BioTransformerParameters.from_json(json) +# print the JSON string representation of the object +print(BioTransformerParameters.to_json()) + +# convert the object into a dict +bio_transformer_parameters_dict = bio_transformer_parameters_instance.to_dict() +# create an instance of BioTransformerParameters from a dict +bio_transformer_parameters_from_dict = BioTransformerParameters.from_dict(bio_transformer_parameters_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_python/generated/docs/BioTransformerSequenceStep.md b/client-api_python/generated/docs/BioTransformerSequenceStep.md new file mode 100644 index 00000000..ad092ecb --- /dev/null +++ b/client-api_python/generated/docs/BioTransformerSequenceStep.md @@ -0,0 +1,30 @@ +# BioTransformerSequenceStep + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**metabolic_transformation** | [**MetabolicTransformation**](MetabolicTransformation.md) | | [optional] +**iterations** | **int** | | [optional] + +## Example + +```python +from PySirius.models.bio_transformer_sequence_step import BioTransformerSequenceStep + +# TODO update the JSON string below +json = "{}" +# create an instance of BioTransformerSequenceStep from a JSON string +bio_transformer_sequence_step_instance = BioTransformerSequenceStep.from_json(json) +# print the JSON string representation of the object +print(BioTransformerSequenceStep.to_json()) + +# convert the object into a dict +bio_transformer_sequence_step_dict = bio_transformer_sequence_step_instance.to_dict() +# create an instance of BioTransformerSequenceStep from a dict +bio_transformer_sequence_step_from_dict = BioTransformerSequenceStep.from_dict(bio_transformer_sequence_step_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_python/generated/docs/Compound.md b/client-api_python/generated/docs/Compound.md index 9b8d19b5..4c1c26b4 100644 --- a/client-api_python/generated/docs/Compound.md +++ b/client-api_python/generated/docs/Compound.md @@ -11,9 +11,10 @@ Name | Type | Description | Notes **rt_end_seconds** | **float** | The merged/consensus retention time end (latest rt) of this compound | [optional] **neutral_mass** | **float** | Neutral mass of this compound. Ion masse minus the mass of the assigned adduct of each feature of this compound should result in the same neutral mass | [optional] **features** | [**List[AlignedFeature]**](AlignedFeature.md) | List of aligned features (adducts) that belong to the same (this) compound | [optional] -**consensus_annotations** | [**ConsensusAnnotationsCSI**](ConsensusAnnotationsCSI.md) | | [optional] -**consensus_annotations_de_novo** | [**ConsensusAnnotationsDeNovo**](ConsensusAnnotationsDeNovo.md) | | [optional] -**custom_annotations** | [**ConsensusAnnotationsCSI**](ConsensusAnnotationsCSI.md) | | [optional] +**consensus_annotations** | [**ConsensusAnnotationsCSI**](ConsensusAnnotationsCSI.md) | The consensus of the top annotations from all the features of this compound. Null if it was not requested und non-null otherwise. Might contain empty fields if results are not available | [optional] +**consensus_annotations_de_novo** | [**ConsensusAnnotationsDeNovo**](ConsensusAnnotationsDeNovo.md) | The consensus of the top de novo annotations from all the features of this compound. Null if it was not requested und non-null otherwise. Might contain empty fields if results are not available | [optional] +**custom_annotations** | [**ConsensusAnnotationsCSI**](ConsensusAnnotationsCSI.md) | Alternative annotations selected by the User. | [optional] +**tags** | [**Dict[str, Tag]**](Tag.md) | Key: tagName, value: tag | [optional] ## Example diff --git a/client-api_python/generated/docs/CompoundClass.md b/client-api_python/generated/docs/CompoundClass.md index 15b179ca..487e117d 100644 --- a/client-api_python/generated/docs/CompoundClass.md +++ b/client-api_python/generated/docs/CompoundClass.md @@ -6,7 +6,7 @@ Predicted compound class with name, probability and id if available. (ClassyFir Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**type** | [**CompoundClassType**](CompoundClassType.md) | | [optional] +**type** | [**CompoundClassType**](CompoundClassType.md) | Specifies the classification ontology the CompoundClass belongs to. | [optional] **level** | **str** | Name of the level this compound class belongs to | [optional] **level_index** | **int** | Index of the level this compound class belongs to | [optional] **name** | **str** | Name of the compound class. | [optional] diff --git a/client-api_python/generated/docs/CompoundClasses.md b/client-api_python/generated/docs/CompoundClasses.md index 04b9aab4..ef7707e2 100644 --- a/client-api_python/generated/docs/CompoundClasses.md +++ b/client-api_python/generated/docs/CompoundClasses.md @@ -6,9 +6,9 @@ Container class that holds the most likely compound class for different levels o Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**npc_pathway** | [**CompoundClass**](CompoundClass.md) | | [optional] -**npc_superclass** | [**CompoundClass**](CompoundClass.md) | | [optional] -**npc_class** | [**CompoundClass**](CompoundClass.md) | | [optional] +**npc_pathway** | [**CompoundClass**](CompoundClass.md) | Pathway level NPC class with the highest probability | [optional] +**npc_superclass** | [**CompoundClass**](CompoundClass.md) | Superclass level NPC class with the highest probability | [optional] +**npc_class** | [**CompoundClass**](CompoundClass.md) | Class level NPC class with the highest probability | [optional] **classy_fire_lineage** | [**List[CompoundClass]**](CompoundClass.md) | Most likely ClassyFire lineage from ordered from least specific to most specific class classyFireLineage.get(classyFireLineage.size() - 1) gives the most specific ClassyFire compound class annotation | [optional] **classy_fire_alternatives** | [**List[CompoundClass]**](CompoundClass.md) | Alternative ClassyFire classes with high probability that do not fit into the linage | [optional] diff --git a/client-api_python/generated/docs/CompoundOptField.md b/client-api_python/generated/docs/CompoundOptField.md index e8f7a857..9c28ef9d 100644 --- a/client-api_python/generated/docs/CompoundOptField.md +++ b/client-api_python/generated/docs/CompoundOptField.md @@ -11,6 +11,8 @@ * `CUSTOMANNOTATIONS` (value: `'customAnnotations'`) +* `TAGS` (value: `'tags'`) + [[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_python/generated/docs/CompoundStatisticsApi.md b/client-api_python/generated/docs/CompoundStatisticsApi.md new file mode 100644 index 00000000..808618f3 --- /dev/null +++ b/client-api_python/generated/docs/CompoundStatisticsApi.md @@ -0,0 +1,312 @@ +# PySirius.CompoundStatisticsApi + +All URIs are relative to *http://localhost:8080* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**compute_compound_fold_changes_experimental**](CompoundStatisticsApi.md#compute_compound_fold_changes_experimental) | **PUT** /api/projects/{projectId}/compounds/statistics/foldchange/compute | [EXPERIMENTAL] Compute the fold change between two groups of runs +[**delete_compound_fold_changes_experimental**](CompoundStatisticsApi.md#delete_compound_fold_changes_experimental) | **DELETE** /api/projects/{projectId}/compounds/statistics/foldchanges | [EXPERIMENTAL] Delete fold changes +[**get_compound_fold_change_table_experimental**](CompoundStatisticsApi.md#get_compound_fold_change_table_experimental) | **GET** /api/projects/{projectId}/compounds/statistics/foldchanges/stats-table | [EXPERIMENTAL] Get table of all fold changes in the project space +[**get_fold_changes_by_compound_experimental**](CompoundStatisticsApi.md#get_fold_changes_by_compound_experimental) | **GET** /api/projects/{projectId}/compounds/statistics/foldchanges/{objectId} | [EXPERIMENTAL] List all fold changes that are associated with an object + + +# **compute_compound_fold_changes_experimental** +> Job compute_compound_fold_changes_experimental(project_id, left_group_name, right_group_name, aggregation=aggregation, quantification=quantification, opt_fields=opt_fields) + +[EXPERIMENTAL] Compute the fold change between two groups of runs + +[EXPERIMENTAL] Compute the fold change between two groups of runs.
The runs need to be tagged and grouped.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.aggregation_type import AggregationType +from PySirius.models.job import Job +from PySirius.models.job_opt_field import JobOptField +from PySirius.models.quant_measure import QuantMeasure +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.CompoundStatisticsApi(api_client) + project_id = 'project_id_example' # str | project-space to compute the fold change in. + left_group_name = 'left_group_name_example' # str | name of the left tag group. + right_group_name = 'right_group_name_example' # str | name of the right tag group. + aggregation = PySirius.AggregationType() # AggregationType | aggregation type. (optional) + quantification = PySirius.QuantMeasure() # QuantMeasure | quantification type. (optional) + opt_fields = [progress] # List[JobOptField] | job opt fields. (optional) (default to [progress]) + + try: + # [EXPERIMENTAL] Compute the fold change between two groups of runs + api_response = api_instance.compute_compound_fold_changes_experimental(project_id, left_group_name, right_group_name, aggregation=aggregation, quantification=quantification, opt_fields=opt_fields) + print("The response of CompoundStatisticsApi->compute_compound_fold_changes_experimental:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling CompoundStatisticsApi->compute_compound_fold_changes_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to compute the fold change in. | + **left_group_name** | **str**| name of the left tag group. | + **right_group_name** | **str**| name of the right tag group. | + **aggregation** | [**AggregationType**](.md)| aggregation type. | [optional] + **quantification** | [**QuantMeasure**](.md)| quantification type. | [optional] + **opt_fields** | [**List[JobOptField]**](JobOptField.md)| job opt fields. | [optional] [default to [progress]] + +### Return type + +[**Job**](Job.md) + +### 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) + +# **delete_compound_fold_changes_experimental** +> delete_compound_fold_changes_experimental(project_id, left_group_name, right_group_name, aggregation=aggregation, quantification=quantification) + +[EXPERIMENTAL] Delete fold changes + +[EXPERIMENTAL] Delete fold changes.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.aggregation_type import AggregationType +from PySirius.models.quant_measure import QuantMeasure +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.CompoundStatisticsApi(api_client) + project_id = 'project_id_example' # str | project-space to delete from. + left_group_name = 'left_group_name_example' # str | name of the left group. + right_group_name = 'right_group_name_example' # str | name of the right group. + aggregation = PySirius.AggregationType() # AggregationType | (optional) + quantification = PySirius.QuantMeasure() # QuantMeasure | (optional) + + try: + # [EXPERIMENTAL] Delete fold changes + api_instance.delete_compound_fold_changes_experimental(project_id, left_group_name, right_group_name, aggregation=aggregation, quantification=quantification) + except Exception as e: + print("Exception when calling CompoundStatisticsApi->delete_compound_fold_changes_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to delete from. | + **left_group_name** | **str**| name of the left group. | + **right_group_name** | **str**| name of the right group. | + **aggregation** | [**AggregationType**](.md)| | [optional] + **quantification** | [**QuantMeasure**](.md)| | [optional] + +### 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 | +|-------------|-------------|------------------| +**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_compound_fold_change_table_experimental** +> StatisticsTable get_compound_fold_change_table_experimental(project_id, aggregation=aggregation, quantification=quantification) + +[EXPERIMENTAL] Get table of all fold changes in the project space + +[EXPERIMENTAL] Get table of all fold changes in the project space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.aggregation_type import AggregationType +from PySirius.models.quant_measure import QuantMeasure +from PySirius.models.statistics_table import StatisticsTable +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.CompoundStatisticsApi(api_client) + project_id = 'project_id_example' # str | project-space to read from. + aggregation = PySirius.AggregationType() # AggregationType | aggregation type. (optional) + quantification = PySirius.QuantMeasure() # QuantMeasure | quantification type. (optional) + + try: + # [EXPERIMENTAL] Get table of all fold changes in the project space + api_response = api_instance.get_compound_fold_change_table_experimental(project_id, aggregation=aggregation, quantification=quantification) + print("The response of CompoundStatisticsApi->get_compound_fold_change_table_experimental:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling CompoundStatisticsApi->get_compound_fold_change_table_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to read from. | + **aggregation** | [**AggregationType**](.md)| aggregation type. | [optional] + **quantification** | [**QuantMeasure**](.md)| quantification type. | [optional] + +### Return type + +[**StatisticsTable**](StatisticsTable.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | table of fold changes. | - | + +[[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_fold_changes_by_compound_experimental** +> List[FoldChange] get_fold_changes_by_compound_experimental(project_id, object_id) + +[EXPERIMENTAL] List all fold changes that are associated with an object + +[EXPERIMENTAL] List all fold changes that are associated with an object.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.fold_change import FoldChange +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.CompoundStatisticsApi(api_client) + project_id = 'project_id_example' # str | project-space to read from. + object_id = 'object_id_example' # str | id of the object the fold changes are assigned to. + + try: + # [EXPERIMENTAL] List all fold changes that are associated with an object + api_response = api_instance.get_fold_changes_by_compound_experimental(project_id, object_id) + print("The response of CompoundStatisticsApi->get_fold_changes_by_compound_experimental:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling CompoundStatisticsApi->get_fold_changes_by_compound_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to read from. | + **object_id** | **str**| id of the object the fold changes are assigned to. | + +### Return type + +[**List[FoldChange]**](FoldChange.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | fold changes | - | + +[[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/CompoundsApi.md b/client-api_python/generated/docs/CompoundsApi.md index 17a365b9..3fa7aa40 100644 --- a/client-api_python/generated/docs/CompoundsApi.md +++ b/client-api_python/generated/docs/CompoundsApi.md @@ -5,11 +5,18 @@ All URIs are relative to *http://localhost:8080* Method | HTTP request | Description ------------- | ------------- | ------------- [**add_compounds**](CompoundsApi.md#add_compounds) | **POST** /api/projects/{projectId}/compounds | Import Compounds and its contained features. +[**add_tags_to_compound_experimental**](CompoundsApi.md#add_tags_to_compound_experimental) | **PUT** /api/projects/{projectId}/compounds/tags/{compoundId} | [EXPERIMENTAL] Tags with the same name will be overwritten [**delete_compound**](CompoundsApi.md#delete_compound) | **DELETE** /api/projects/{projectId}/compounds/{compoundId} | Delete compound (group of ion identities) with the given identifier (and the included features) from the specified project-space. [**get_compound**](CompoundsApi.md#get_compound) | **GET** /api/projects/{projectId}/compounds/{compoundId} | Get compound (group of ion identities) with the given identifier from the specified project-space. -[**get_compound_traces_experimental**](CompoundsApi.md#get_compound_traces_experimental) | **GET** /api/projects/{projectId}/compounds/{compoundId}/traces | EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +[**get_compound_quant_table_experimental**](CompoundsApi.md#get_compound_quant_table_experimental) | **GET** /api/projects/{projectId}/compounds/quant-table | [EXPERIMENTAL] Returns the full quantification table of compounds +[**get_compound_quant_table_row_experimental**](CompoundsApi.md#get_compound_quant_table_row_experimental) | **GET** /api/projects/{projectId}/compounds/{compoundId}/quant-table-row | [EXPERIMENTAL] Returns a single quantification table row for the given compound +[**get_compound_traces_experimental**](CompoundsApi.md#get_compound_traces_experimental) | **GET** /api/projects/{projectId}/compounds/{compoundId}/traces | [EXPERIMENTAL] Returns the traces of the given compound [**get_compounds**](CompoundsApi.md#get_compounds) | **GET** /api/projects/{projectId}/compounds | List of all available compounds (group of ion identities) in the given project-space. +[**get_compounds_by_group_experimental**](CompoundsApi.md#get_compounds_by_group_experimental) | **GET** /api/projects/{projectId}/compounds/grouped | [EXPERIMENTAL] Get compounds (group of ion identities) by tag group +[**get_compounds_by_tag_experimental**](CompoundsApi.md#get_compounds_by_tag_experimental) | **GET** /api/projects/{projectId}/compounds/tagged | [EXPERIMENTAL] Get compounds (group of ion identities) by tag [**get_compounds_paged**](CompoundsApi.md#get_compounds_paged) | **GET** /api/projects/{projectId}/compounds/page | Page of available compounds (group of ion identities) in the given project-space. +[**get_tags_for_compound_experimental**](CompoundsApi.md#get_tags_for_compound_experimental) | **GET** /api/projects/{projectId}/compounds/tags/{objectId} | [EXPERIMENTAL] Get all tags associated with this Compound +[**remove_tag_from_compound_experimental**](CompoundsApi.md#remove_tag_from_compound_experimental) | **DELETE** /api/projects/{projectId}/compounds/tags/{compoundId}/{tagName} | [EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space # **add_compounds** @@ -46,8 +53,8 @@ with PySirius.ApiClient(configuration) as api_client: project_id = 'project_id_example' # str | project-space to import into. compound_import = [PySirius.CompoundImport()] # List[CompoundImport] | the compound data to be imported profile = PySirius.InstrumentProfile() # InstrumentProfile | profile describing the instrument used to measure the data. Used to merge spectra. (optional) - opt_fields = ["none"] # List[CompoundOptField] | set of optional fields to be included. Use 'none' to override defaults. (optional) (default to ["none"]) - opt_fields_features = ["none"] # List[AlignedFeatureOptField] | set of optional fields of the nested features to be included. Use 'none' to override defaults. (optional) (default to ["none"]) + opt_fields = [none] # List[CompoundOptField] | set of optional fields to be included. Use 'none' to override defaults. (optional) (default to [none]) + opt_fields_features = [none] # List[AlignedFeatureOptField] | set of optional fields of the nested features to be included. Use 'none' to override defaults. (optional) (default to [none]) try: # Import Compounds and its contained features. @@ -68,8 +75,8 @@ Name | Type | Description | Notes **project_id** | **str**| project-space to import into. | **compound_import** | [**List[CompoundImport]**](CompoundImport.md)| the compound data to be imported | **profile** | [**InstrumentProfile**](.md)| profile describing the instrument used to measure the data. Used to merge spectra. | [optional] - **opt_fields** | [**List[CompoundOptField]**](CompoundOptField.md)| set of optional fields to be included. Use 'none' to override defaults. | [optional] [default to ["none"]] - **opt_fields_features** | [**List[AlignedFeatureOptField]**](AlignedFeatureOptField.md)| set of optional fields of the nested features to be included. Use 'none' to override defaults. | [optional] [default to ["none"]] + **opt_fields** | [**List[CompoundOptField]**](CompoundOptField.md)| set of optional fields to be included. Use 'none' to override defaults. | [optional] [default to [none]] + **opt_fields_features** | [**List[AlignedFeatureOptField]**](AlignedFeatureOptField.md)| set of optional fields of the nested features to be included. Use 'none' to override defaults. | [optional] [default to [none]] ### Return type @@ -92,6 +99,78 @@ No authorization required [[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) +# **add_tags_to_compound_experimental** +> List[Tag] add_tags_to_compound_experimental(project_id, compound_id, tag) + +[EXPERIMENTAL] Tags with the same name will be overwritten + +[EXPERIMENTAL] Tags with the same name will be overwritten.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.tag import Tag +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.CompoundsApi(api_client) + project_id = 'project_id_example' # str | project-space to add to. + compound_id = 'compound_id_example' # str | compound (group of ion identities) to add tags to. + tag = [PySirius.Tag()] # List[Tag] | tags to add. + + try: + # [EXPERIMENTAL] Tags with the same name will be overwritten + api_response = api_instance.add_tags_to_compound_experimental(project_id, compound_id, tag) + print("The response of CompoundsApi->add_tags_to_compound_experimental:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling CompoundsApi->add_tags_to_compound_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to add to. | + **compound_id** | **str**| compound (group of ion identities) to add tags to. | + **tag** | [**List[Tag]**](Tag.md)| tags to add. | + +### Return type + +[**List[Tag]**](Tag.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | the tags that have been added | - | + +[[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) + # **delete_compound** > delete_compound(project_id, compound_id) @@ -160,7 +239,7 @@ No authorization required [[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_compound** -> Compound get_compound(project_id, compound_id, opt_fields=opt_fields, opt_fields_features=opt_fields_features) +> Compound get_compound(project_id, compound_id, ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields, opt_fields_features=opt_fields_features) Get compound (group of ion identities) with the given identifier from the specified project-space. @@ -190,12 +269,13 @@ with PySirius.ApiClient(configuration) as api_client: api_instance = PySirius.CompoundsApi(api_client) project_id = 'project_id_example' # str | project-space to read from. compound_id = 'compound_id_example' # str | identifier of the compound (group of ion identities) to access. - opt_fields = ["none"] # List[CompoundOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to ["none"]) - opt_fields_features = ["none"] # List[AlignedFeatureOptField] | (optional) (default to ["none"]) + ms_data_search_prepared = False # bool | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (optional) (default to False) + opt_fields = [none] # List[CompoundOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to [none]) + opt_fields_features = [none] # List[AlignedFeatureOptField] | (optional) (default to [none]) try: # Get compound (group of ion identities) with the given identifier from the specified project-space. - api_response = api_instance.get_compound(project_id, compound_id, opt_fields=opt_fields, opt_fields_features=opt_fields_features) + api_response = api_instance.get_compound(project_id, compound_id, ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields, opt_fields_features=opt_fields_features) print("The response of CompoundsApi->get_compound:\n") pprint(api_response) except Exception as e: @@ -211,8 +291,9 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **str**| project-space to read from. | **compound_id** | **str**| identifier of the compound (group of ion identities) to access. | - **opt_fields** | [**List[CompoundOptField]**](CompoundOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] - **opt_fields_features** | [**List[AlignedFeatureOptField]**](AlignedFeatureOptField.md)| | [optional] [default to ["none"]] + **ms_data_search_prepared** | **bool**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to False] + **opt_fields** | [**List[CompoundOptField]**](CompoundOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] + **opt_fields_features** | [**List[AlignedFeatureOptField]**](AlignedFeatureOptField.md)| | [optional] [default to [none]] ### Return type @@ -235,12 +316,156 @@ No authorization required [[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_compound_quant_table_experimental** +> QuantTableExperimental get_compound_quant_table_experimental(project_id, type=type) + +[EXPERIMENTAL] Returns the full quantification table of compounds + +[EXPERIMENTAL] Returns the full quantification table of compounds.
The quantification table contains a quantification of the features within all runs they are contained in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.* + +### Example + + +```python +import PySirius +from PySirius.models.quant_measure import QuantMeasure +from PySirius.models.quant_table_experimental import QuantTableExperimental +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.CompoundsApi(api_client) + project_id = 'project_id_example' # str | project-space to read from. + type = PySirius.QuantMeasure() # QuantMeasure | quantification type. (optional) + + try: + # [EXPERIMENTAL] Returns the full quantification table of compounds + api_response = api_instance.get_compound_quant_table_experimental(project_id, type=type) + print("The response of CompoundsApi->get_compound_quant_table_experimental:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling CompoundsApi->get_compound_quant_table_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to read from. | + **type** | [**QuantMeasure**](.md)| quantification type. | [optional] + +### Return type + +[**QuantTableExperimental**](QuantTableExperimental.md) + +### 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_compound_quant_table_row_experimental** +> QuantTableExperimental get_compound_quant_table_row_experimental(project_id, compound_id, type=type) + +[EXPERIMENTAL] Returns a single quantification table row for the given compound + +[EXPERIMENTAL] Returns a single quantification table row for the given compound.
The quantification table contains a quantification of the feature within all samples it is contained in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.* + +### Example + + +```python +import PySirius +from PySirius.models.quant_measure import QuantMeasure +from PySirius.models.quant_table_experimental import QuantTableExperimental +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.CompoundsApi(api_client) + project_id = 'project_id_example' # str | project-space to read from. + compound_id = 'compound_id_example' # str | compound which should be read out + type = PySirius.QuantMeasure() # QuantMeasure | quantification type. (optional) + + try: + # [EXPERIMENTAL] Returns a single quantification table row for the given compound + api_response = api_instance.get_compound_quant_table_row_experimental(project_id, compound_id, type=type) + print("The response of CompoundsApi->get_compound_quant_table_row_experimental:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling CompoundsApi->get_compound_quant_table_row_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to read from. | + **compound_id** | **str**| compound which should be read out | + **type** | [**QuantMeasure**](.md)| quantification type. | [optional] + +### Return type + +[**QuantTableExperimental**](QuantTableExperimental.md) + +### 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_compound_traces_experimental** > TraceSetExperimental get_compound_traces_experimental(project_id, compound_id, feature_id=feature_id) -EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +[EXPERIMENTAL] Returns the traces of the given compound -Returns the traces of the given compound. A trace consists of m/z and intensity values over the retention time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis, but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data. However, this also means that all traces can be directly compared against each other, as they all lie in the same retention time axis. +[EXPERIMENTAL] Returns the traces of the given compound.
A trace consists of m/z and intensity values over the retention time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis, but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data. However, this also means that all traces can be directly compared against each other, as they all lie in the same retention time axis.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.* ### Example @@ -267,7 +492,7 @@ with PySirius.ApiClient(configuration) as api_client: feature_id = '' # str | (optional) (default to '') try: - # EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + # [EXPERIMENTAL] Returns the traces of the given compound api_response = api_instance.get_compound_traces_experimental(project_id, compound_id, feature_id=feature_id) print("The response of CompoundsApi->get_compound_traces_experimental:\n") pprint(api_response) @@ -308,7 +533,7 @@ No authorization required [[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_compounds** -> List[Compound] get_compounds(project_id, opt_fields=opt_fields, opt_fields_features=opt_fields_features) +> List[Compound] get_compounds(project_id, ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields, opt_fields_features=opt_fields_features) List of all available compounds (group of ion identities) in the given project-space. @@ -337,12 +562,13 @@ with PySirius.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = PySirius.CompoundsApi(api_client) project_id = 'project_id_example' # str | project-space to read from. + ms_data_search_prepared = False # bool | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (optional) (default to False) opt_fields = ["none"] # List[CompoundOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to ["none"]) opt_fields_features = ["none"] # List[AlignedFeatureOptField] | (optional) (default to ["none"]) try: # List of all available compounds (group of ion identities) in the given project-space. - api_response = api_instance.get_compounds(project_id, opt_fields=opt_fields, opt_fields_features=opt_fields_features) + api_response = api_instance.get_compounds(project_id, ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields, opt_fields_features=opt_fields_features) print("The response of CompoundsApi->get_compounds:\n") pprint(api_response) except Exception as e: @@ -357,6 +583,7 @@ with PySirius.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **str**| project-space to read from. | + **ms_data_search_prepared** | **bool**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to False] **opt_fields** | [**List[CompoundOptField]**](CompoundOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] **opt_fields_features** | [**List[AlignedFeatureOptField]**](AlignedFeatureOptField.md)| | [optional] [default to ["none"]] @@ -381,8 +608,166 @@ No authorization required [[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_compounds_by_group_experimental** +> PagedModelCompound get_compounds_by_group_experimental(project_id, group_name, page=page, size=size, sort=sort, opt_fields=opt_fields) + +[EXPERIMENTAL] Get compounds (group of ion identities) by tag group + +[EXPERIMENTAL] Get compounds (group of ion identities) by tag group.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.compound_opt_field import CompoundOptField +from PySirius.models.paged_model_compound import PagedModelCompound +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.CompoundsApi(api_client) + project_id = 'project_id_example' # str | project-space to delete from. + group_name = 'group_name_example' # str | tag group name. + page = 0 # int | Zero-based page index (0..N) (optional) (default to 0) + size = 20 # int | The size of the page to be returned (optional) (default to 20) + sort = ['sort_example'] # List[str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) + opt_fields = [none] # List[CompoundOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to [none]) + + try: + # [EXPERIMENTAL] Get compounds (group of ion identities) by tag group + api_response = api_instance.get_compounds_by_group_experimental(project_id, group_name, page=page, size=size, sort=sort, opt_fields=opt_fields) + print("The response of CompoundsApi->get_compounds_by_group_experimental:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling CompoundsApi->get_compounds_by_group_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to delete from. | + **group_name** | **str**| tag group name. | + **page** | **int**| Zero-based page index (0..N) | [optional] [default to 0] + **size** | **int**| The size of the page to be returned | [optional] [default to 20] + **sort** | [**List[str]**](str.md)| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] + **opt_fields** | [**List[CompoundOptField]**](CompoundOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] + +### Return type + +[**PagedModelCompound**](PagedModelCompound.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | tagged compounds (group of ion identities) | - | + +[[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_compounds_by_tag_experimental** +> PagedModelCompound get_compounds_by_tag_experimental(project_id, filter=filter, page=page, size=size, sort=sort, opt_fields=opt_fields) + +[EXPERIMENTAL] Get compounds (group of ion identities) by tag + +[EXPERIMENTAL] Get compounds (group of ion identities) by tag.
The filter string must contain one or more clauses. A clause is prefÃxed by a field name.
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). Tag name based field need to be prefixed with the namespace tags.. Possible value types of tags are bool, integer, real, text, date, or time - tag value The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.
A clause may be:
tags.MyTagA:sampletags.MyTagA:"Some Text"tags.MyTagA:/[mb]oat/tags.MyTagB<3[ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3] Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )
The syntax allows to build complex filter queries such as:
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
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### 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.CompoundsApi(api_client) + project_id = 'project_id_example' # str | project-space to delete from. + compound_id = 'compound_id_example' # str | compound (group of ion identities) to delete tag from. + tag_name = 'tag_name_example' # str | name of the tag to delete. + + try: + # [EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space + api_instance.remove_tag_from_compound_experimental(project_id, compound_id, tag_name) + except Exception as e: + print("Exception when calling CompoundsApi->remove_tag_from_compound_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to delete from. | + **compound_id** | **str**| compound (group of ion identities) to delete tag from. | + **tag_name** | **str**| name of the tag to delete. | + +### 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 | +|-------------|-------------|------------------| +**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) + diff --git a/client-api_python/generated/docs/ComputedSubtools.md b/client-api_python/generated/docs/ComputedSubtools.md index c76f8ae3..71f632b9 100644 --- a/client-api_python/generated/docs/ComputedSubtools.md +++ b/client-api_python/generated/docs/ComputedSubtools.md @@ -1,6 +1,5 @@ # ComputedSubtools -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. ## Properties diff --git a/client-api_python/generated/docs/ConsensusAnnotationsCSI.md b/client-api_python/generated/docs/ConsensusAnnotationsCSI.md index a2e8f80b..bfaff531 100644 --- a/client-api_python/generated/docs/ConsensusAnnotationsCSI.md +++ b/client-api_python/generated/docs/ConsensusAnnotationsCSI.md @@ -6,10 +6,10 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **molecular_formula** | **str** | Molecular formula of the consensus annotation Might be null if no consensus formula is available. | [optional] -**compound_classes** | [**CompoundClasses**](CompoundClasses.md) | | [optional] -**supporting_feature_ids** | **List[Optional[str]]** | FeatureIds where the topAnnotation supports this annotation. | [optional] -**selection_criterion** | [**ConsensusCriterionCSI**](ConsensusCriterionCSI.md) | | [optional] -**csi_finger_id_structure** | [**StructureCandidate**](StructureCandidate.md) | | [optional] +**compound_classes** | [**CompoundClasses**](CompoundClasses.md) | Compound classes (predicted with CANOPUS) corresponding to the molecularFormula Might be null if no fingerprints or compound classes are available. | [optional] +**supporting_feature_ids** | **List[str]** | FeatureIds where the topAnnotation supports this annotation. | [optional] +**selection_criterion** | [**ConsensusCriterionCSI**](ConsensusCriterionCSI.md) | Null if this is a custom selection | [optional] +**csi_finger_id_structure** | [**StructureCandidate**](StructureCandidate.md) | Database structure candidate (searched with CSI:FingerID), that also defines the molecularFormula Might be null if no consensus structure is available. | [optional] **confidence_exact_match** | **float** | Confidence value that represents the certainty that reported consensus structure is exactly the measured one If multiple features support this consensus structure the maximum confidence is reported | [optional] **confidence_approx_match** | **float** | Confidence value that represents the certainty that the exact consensus structure or a very similar structure (e.g. measured by Maximum Common Edge Subgraph Distance) is the measured one. If multiple features support this consensus structure the maximum confidence is reported | [optional] diff --git a/client-api_python/generated/docs/ConsensusAnnotationsDeNovo.md b/client-api_python/generated/docs/ConsensusAnnotationsDeNovo.md index 5506bfc6..461d0114 100644 --- a/client-api_python/generated/docs/ConsensusAnnotationsDeNovo.md +++ b/client-api_python/generated/docs/ConsensusAnnotationsDeNovo.md @@ -6,9 +6,9 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **molecular_formula** | **str** | Molecular formula of the consensus annotation Might be null if no consensus formula is available. | [optional] -**compound_classes** | [**CompoundClasses**](CompoundClasses.md) | | [optional] -**supporting_feature_ids** | **List[Optional[str]]** | FeatureIds where the topAnnotation supports this annotation. | [optional] -**selection_criterion** | [**ConsensusCriterionDeNovo**](ConsensusCriterionDeNovo.md) | | [optional] +**compound_classes** | [**CompoundClasses**](CompoundClasses.md) | Compound classes (predicted with CANOPUS) corresponding to the molecularFormula Might be null if no fingerprints or compound classes are available. | [optional] +**supporting_feature_ids** | **List[str]** | FeatureIds where the topAnnotation supports this annotation. | [optional] +**selection_criterion** | [**ConsensusCriterionDeNovo**](ConsensusCriterionDeNovo.md) | Criterion that was used to select the consensus annotation. | [optional] ## Example diff --git a/client-api_python/generated/docs/Cyp450Mode.md b/client-api_python/generated/docs/Cyp450Mode.md new file mode 100644 index 00000000..9900816f --- /dev/null +++ b/client-api_python/generated/docs/Cyp450Mode.md @@ -0,0 +1,14 @@ +# Cyp450Mode + + +## Enum + +* `RULE_BASED` (value: `'RULE_BASED'`) + +* `CY_PRODUCT` (value: `'CY_PRODUCT'`) + +* `COMBINED` (value: `'COMBINED'`) + +[[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_python/generated/docs/FeatureAnnotations.md b/client-api_python/generated/docs/FeatureAnnotations.md index 0ba7b825..a4695ff1 100644 --- a/client-api_python/generated/docs/FeatureAnnotations.md +++ b/client-api_python/generated/docs/FeatureAnnotations.md @@ -6,14 +6,14 @@ Summary of the results of a feature (aligned over runs). Can be added to a Align Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**formula_annotation** | [**FormulaCandidate**](FormulaCandidate.md) | | [optional] -**structure_annotation** | [**StructureCandidateScored**](StructureCandidateScored.md) | | [optional] -**compound_class_annotation** | [**CompoundClasses**](CompoundClasses.md) | | [optional] +**formula_annotation** | [**FormulaCandidate**](FormulaCandidate.md) | Best matching FormulaCandidate. | [optional] +**structure_annotation** | [**StructureCandidateScored**](StructureCandidateScored.md) | Best matching StructureCandidate ranked by CSI:FingerID Score over all FormulaCandidates. | [optional] +**compound_class_annotation** | [**CompoundClasses**](CompoundClasses.md) | Best matching compound classes that correspond to the formulaAnnotation | [optional] **confidence_exact_match** | **float** | Confidence Score that represents the confidence whether the top hit is correct. | [optional] **confidence_approx_match** | **float** | Confidence Score that represents the confidence whether the top hit or a very similar hit (estimated by MCES distance) is correct. | [optional] -**expansive_search_state** | [**ConfidenceMode**](ConfidenceMode.md) | | [optional] -**specified_databases** | **List[Optional[str]]** | List of databases that have been specified by for structure db search. Null if no structure db search has been performed. | [optional] -**expanded_databases** | **List[Optional[str]]** | List of databases that have been used to expand search space during expansive search. Null if no structure db search has been performed. | [optional] +**expansive_search_state** | [**ConfidenceMode**](ConfidenceMode.md) | 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) | [optional] +**specified_databases** | **List[str]** | List of databases that have been specified by for structure db search. Null if no structure db search has been performed. | [optional] +**expanded_databases** | **List[str]** | List of databases that have been used to expand search space during expansive search. Null if no structure db search has been performed. | [optional] ## Example diff --git a/client-api_python/generated/docs/FeatureImport.md b/client-api_python/generated/docs/FeatureImport.md index e4964e21..eb6772b9 100644 --- a/client-api_python/generated/docs/FeatureImport.md +++ b/client-api_python/generated/docs/FeatureImport.md @@ -10,12 +10,12 @@ Name | Type | Description | Notes **external_feature_id** | **str** | 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. | [optional] **ion_mass** | **float** | | **charge** | **int** | | -**detected_adducts** | **List[Optional[str]]** | Detected adducts of this feature. Can be NULL or empty if no adducts are known. | [optional] +**detected_adducts** | **List[str]** | Detected adducts of this feature. Can be NULL or empty if no adducts are known. | [optional] **rt_start_seconds** | **float** | | [optional] **rt_end_seconds** | **float** | | [optional] **rt_apex_seconds** | **float** | | [optional] -**data_quality** | [**DataQuality**](DataQuality.md) | | [optional] -**merged_ms1** | [**BasicSpectrum**](BasicSpectrum.md) | | [optional] +**data_quality** | [**DataQuality**](DataQuality.md) | 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. | [optional] +**merged_ms1** | [**BasicSpectrum**](BasicSpectrum.md) | Merged/Representative MS1 spectrum of this feature that contains the isotope pattern of the precursor ion. Note: 'ms1Spectra' will be ignored if given. | [optional] **ms1_spectra** | [**List[BasicSpectrum]**](BasicSpectrum.md) | List of MS1Spectra belonging to this feature. These spectra will be merged an only a representative mergedMs1 spectrum will be stored in SIRIUS. At least one of these spectra should contain the isotope pattern of the precursor ion. Note: Will be ignored if 'mergedMs1' is given. | [optional] **ms2_spectra** | [**List[BasicSpectrum]**](BasicSpectrum.md) | List of MS/MS spectra that belong to this feature. | [optional] diff --git a/client-api_python/generated/docs/FeatureStatisticsApi.md b/client-api_python/generated/docs/FeatureStatisticsApi.md new file mode 100644 index 00000000..7ed35c71 --- /dev/null +++ b/client-api_python/generated/docs/FeatureStatisticsApi.md @@ -0,0 +1,312 @@ +# PySirius.FeatureStatisticsApi + +All URIs are relative to *http://localhost:8080* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**compute_aligned_feature_fold_changes_experimental**](FeatureStatisticsApi.md#compute_aligned_feature_fold_changes_experimental) | **PUT** /api/projects/{projectId}/aligned-features/statistics/foldchange/compute | [EXPERIMENTAL] Compute the fold change between two groups of runs +[**delete_aligned_feature_fold_changes_experimental**](FeatureStatisticsApi.md#delete_aligned_feature_fold_changes_experimental) | **DELETE** /api/projects/{projectId}/aligned-features/statistics/foldchanges | [EXPERIMENTAL] Delete fold changes +[**get_aligned_feature_fold_change_table_experimental**](FeatureStatisticsApi.md#get_aligned_feature_fold_change_table_experimental) | **GET** /api/projects/{projectId}/aligned-features/statistics/foldchanges/stats-table | [EXPERIMENTAL] Get table of all fold changes in the project space +[**get_fold_changes_by_aligned_feature_experimental**](FeatureStatisticsApi.md#get_fold_changes_by_aligned_feature_experimental) | **GET** /api/projects/{projectId}/aligned-features/statistics/foldchanges/{objectId} | [EXPERIMENTAL] List all fold changes that are associated with an object + + +# **compute_aligned_feature_fold_changes_experimental** +> Job compute_aligned_feature_fold_changes_experimental(project_id, left_group_name, right_group_name, aggregation=aggregation, quantification=quantification, opt_fields=opt_fields) + +[EXPERIMENTAL] Compute the fold change between two groups of runs + +[EXPERIMENTAL] Compute the fold change between two groups of runs.
The runs need to be tagged and grouped.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.aggregation_type import AggregationType +from PySirius.models.job import Job +from PySirius.models.job_opt_field import JobOptField +from PySirius.models.quant_measure import QuantMeasure +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.FeatureStatisticsApi(api_client) + project_id = 'project_id_example' # str | project-space to compute the fold change in. + left_group_name = 'left_group_name_example' # str | name of the left tag group. + right_group_name = 'right_group_name_example' # str | name of the right tag group. + aggregation = PySirius.AggregationType() # AggregationType | aggregation type. (optional) + quantification = PySirius.QuantMeasure() # QuantMeasure | quantification type. (optional) + opt_fields = [progress] # List[JobOptField] | job opt fields. (optional) (default to [progress]) + + try: + # [EXPERIMENTAL] Compute the fold change between two groups of runs + api_response = api_instance.compute_aligned_feature_fold_changes_experimental(project_id, left_group_name, right_group_name, aggregation=aggregation, quantification=quantification, opt_fields=opt_fields) + print("The response of FeatureStatisticsApi->compute_aligned_feature_fold_changes_experimental:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling FeatureStatisticsApi->compute_aligned_feature_fold_changes_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to compute the fold change in. | + **left_group_name** | **str**| name of the left tag group. | + **right_group_name** | **str**| name of the right tag group. | + **aggregation** | [**AggregationType**](.md)| aggregation type. | [optional] + **quantification** | [**QuantMeasure**](.md)| quantification type. | [optional] + **opt_fields** | [**List[JobOptField]**](JobOptField.md)| job opt fields. | [optional] [default to [progress]] + +### Return type + +[**Job**](Job.md) + +### 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) + +# **delete_aligned_feature_fold_changes_experimental** +> delete_aligned_feature_fold_changes_experimental(project_id, left_group_name, right_group_name, aggregation=aggregation, quantification=quantification) + +[EXPERIMENTAL] Delete fold changes + +[EXPERIMENTAL] Delete fold changes.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.aggregation_type import AggregationType +from PySirius.models.quant_measure import QuantMeasure +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.FeatureStatisticsApi(api_client) + project_id = 'project_id_example' # str | project-space to delete from. + left_group_name = 'left_group_name_example' # str | name of the left group. + right_group_name = 'right_group_name_example' # str | name of the right group. + aggregation = PySirius.AggregationType() # AggregationType | (optional) + quantification = PySirius.QuantMeasure() # QuantMeasure | (optional) + + try: + # [EXPERIMENTAL] Delete fold changes + api_instance.delete_aligned_feature_fold_changes_experimental(project_id, left_group_name, right_group_name, aggregation=aggregation, quantification=quantification) + except Exception as e: + print("Exception when calling FeatureStatisticsApi->delete_aligned_feature_fold_changes_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to delete from. | + **left_group_name** | **str**| name of the left group. | + **right_group_name** | **str**| name of the right group. | + **aggregation** | [**AggregationType**](.md)| | [optional] + **quantification** | [**QuantMeasure**](.md)| | [optional] + +### 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 | +|-------------|-------------|------------------| +**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_aligned_feature_fold_change_table_experimental** +> StatisticsTable get_aligned_feature_fold_change_table_experimental(project_id, aggregation=aggregation, quantification=quantification) + +[EXPERIMENTAL] Get table of all fold changes in the project space + +[EXPERIMENTAL] Get table of all fold changes in the project space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.aggregation_type import AggregationType +from PySirius.models.quant_measure import QuantMeasure +from PySirius.models.statistics_table import StatisticsTable +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.FeatureStatisticsApi(api_client) + project_id = 'project_id_example' # str | project-space to read from. + aggregation = PySirius.AggregationType() # AggregationType | aggregation type. (optional) + quantification = PySirius.QuantMeasure() # QuantMeasure | quantification type. (optional) + + try: + # [EXPERIMENTAL] Get table of all fold changes in the project space + api_response = api_instance.get_aligned_feature_fold_change_table_experimental(project_id, aggregation=aggregation, quantification=quantification) + print("The response of FeatureStatisticsApi->get_aligned_feature_fold_change_table_experimental:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling FeatureStatisticsApi->get_aligned_feature_fold_change_table_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to read from. | + **aggregation** | [**AggregationType**](.md)| aggregation type. | [optional] + **quantification** | [**QuantMeasure**](.md)| quantification type. | [optional] + +### Return type + +[**StatisticsTable**](StatisticsTable.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | table of fold changes. | - | + +[[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_fold_changes_by_aligned_feature_experimental** +> List[FoldChange] get_fold_changes_by_aligned_feature_experimental(project_id, object_id) + +[EXPERIMENTAL] List all fold changes that are associated with an object + +[EXPERIMENTAL] List all fold changes that are associated with an object.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.fold_change import FoldChange +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.FeatureStatisticsApi(api_client) + project_id = 'project_id_example' # str | project-space to read from. + object_id = 'object_id_example' # str | id of the object the fold changes are assigned to. + + try: + # [EXPERIMENTAL] List all fold changes that are associated with an object + api_response = api_instance.get_fold_changes_by_aligned_feature_experimental(project_id, object_id) + print("The response of FeatureStatisticsApi->get_fold_changes_by_aligned_feature_experimental:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling FeatureStatisticsApi->get_fold_changes_by_aligned_feature_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to read from. | + **object_id** | **str**| id of the object the fold changes are assigned to. | + +### Return type + +[**List[FoldChange]**](FoldChange.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | fold changes | - | + +[[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/FeaturesApi.md b/client-api_python/generated/docs/FeaturesApi.md index 2b5dec86..0868444a 100644 --- a/client-api_python/generated/docs/FeaturesApi.md +++ b/client-api_python/generated/docs/FeaturesApi.md @@ -5,41 +5,49 @@ All URIs are relative to *http://localhost:8080* Method | HTTP request | Description ------------- | ------------- | ------------- [**add_aligned_features**](FeaturesApi.md#add_aligned_features) | **POST** /api/projects/{projectId}/aligned-features | Import (aligned) features into the project. +[**add_de_novo_structure_candidate**](FeaturesApi.md#add_de_novo_structure_candidate) | **PUT** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures | [EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. +[**add_tags_to_aligned_feature_experimental**](FeaturesApi.md#add_tags_to_aligned_feature_experimental) | **PUT** /api/projects/{projectId}/aligned-features/tags/{alignedFeatureId} | [EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project [**delete_aligned_feature**](FeaturesApi.md#delete_aligned_feature) | **DELETE** /api/projects/{projectId}/aligned-features/{alignedFeatureId} | Delete feature (aligned over runs) with the given identifier from the specified project-space. [**delete_aligned_features**](FeaturesApi.md#delete_aligned_features) | **PUT** /api/projects/{projectId}/aligned-features/delete | Delete feature (aligned over runs) with the given identifier from the specified project-space. -[**get_adduct_network_with_merged_traces_experimental**](FeaturesApi.md#get_adduct_network_with_merged_traces_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts | EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +[**get_adduct_network_with_merged_traces_experimental**](FeaturesApi.md#get_adduct_network_with_merged_traces_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts | [EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network [**get_aligned_feature**](FeaturesApi.md#get_aligned_feature) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId} | Get feature (aligned over runs) with the given identifier from the specified project-space. +[**get_aligned_feature_quality_experimental**](FeaturesApi.md#get_aligned_feature_quality_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report | [EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId) [**get_aligned_features**](FeaturesApi.md#get_aligned_features) | **GET** /api/projects/{projectId}/aligned-features | Get all available features (aligned over runs) in the given project-space. +[**get_aligned_features_by_group_experimental**](FeaturesApi.md#get_aligned_features_by_group_experimental) | **GET** /api/projects/{projectId}/aligned-features/grouped | [EXPERIMENTAL] Get features (aligned over runs) by tag group +[**get_aligned_features_by_tag_experimental**](FeaturesApi.md#get_aligned_features_by_tag_experimental) | **GET** /api/projects/{projectId}/aligned-features/tagged | [EXPERIMENTAL] Get features (aligned over runs) by tag [**get_aligned_features_paged**](FeaturesApi.md#get_aligned_features_paged) | **GET** /api/projects/{projectId}/aligned-features/page | Get all available features (aligned over runs) in the given project-space. -[**get_aligned_features_quality_experimental**](FeaturesApi.md#get_aligned_features_quality_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report | EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. -[**get_best_matching_compound_classes**](FeaturesApi.md#get_best_matching_compound_classes) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes | Best matching compound classes, Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, +[**get_best_matching_compound_classes**](FeaturesApi.md#get_best_matching_compound_classes) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes | Return Best matching compound classes for given formulaId [**get_canopus_prediction**](FeaturesApi.md#get_canopus_prediction) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/canopus-prediction | All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities, [**get_de_novo_structure_candidates**](FeaturesApi.md#get_de_novo_structure_candidates) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures | List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. [**get_de_novo_structure_candidates_by_formula**](FeaturesApi.md#get_de_novo_structure_candidates_by_formula) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures | List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. [**get_de_novo_structure_candidates_by_formula_paged**](FeaturesApi.md#get_de_novo_structure_candidates_by_formula_paged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures/page | Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. [**get_de_novo_structure_candidates_paged**](FeaturesApi.md#get_de_novo_structure_candidates_paged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures/page | Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. -[**get_fingerprint_prediction**](FeaturesApi.md#get_fingerprint_prediction) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint | Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier This fingerprint is used to perform structure database search and predict compound classes. -[**get_formula_annotated_ms_ms_data**](FeaturesApi.md#get_formula_annotated_ms_ms_data) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata | Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. -[**get_formula_annotated_spectrum**](FeaturesApi.md#get_formula_annotated_spectrum) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum | Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. +[**get_feature_quant_table_experimental**](FeaturesApi.md#get_feature_quant_table_experimental) | **GET** /api/projects/{projectId}/aligned-features/quant-table | [EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId) +[**get_fingerprint_prediction**](FeaturesApi.md#get_fingerprint_prediction) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint | Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId) +[**get_formula_annotated_ms_ms_data**](FeaturesApi.md#get_formula_annotated_ms_ms_data) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata | Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId +[**get_formula_annotated_spectrum**](FeaturesApi.md#get_formula_annotated_spectrum) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum | Returns a fragmentation spectrum (e [**get_formula_candidate**](FeaturesApi.md#get_formula_candidate) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId} | FormulaResultContainers for the given 'formulaId' with minimal information. [**get_formula_candidates**](FeaturesApi.md#get_formula_candidates) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas | List of FormulaResultContainers available for this feature with minimal information. [**get_formula_candidates_paged**](FeaturesApi.md#get_formula_candidates_paged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/page | Page of FormulaResultContainers available for this feature with minimal information. -[**get_frag_tree**](FeaturesApi.md#get_frag_tree) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree | Returns fragmentation tree (SIRIUS) for the given formula result identifier This tree is used to rank formula candidates (treeScore). -[**get_isotope_pattern_annotation**](FeaturesApi.md#get_isotope_pattern_annotation) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern | Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. -[**get_lipid_annotation**](FeaturesApi.md#get_lipid_annotation) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation | Returns Lipid annotation (ElGordo) for the given formula result identifier. +[**get_frag_tree**](FeaturesApi.md#get_frag_tree) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree | Returns fragmentation tree (SIRIUS) for the given formula result identifier +[**get_isotope_pattern_annotation**](FeaturesApi.md#get_isotope_pattern_annotation) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern | Returns Isotope pattern information for given formulaId +[**get_lipid_annotation**](FeaturesApi.md#get_lipid_annotation) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation | Returns Lipid annotation (ElGordo) for the given formulaId [**get_ms_data**](FeaturesApi.md#get_ms_data) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/ms-data | Mass Spec data (input data) for the given 'alignedFeatureId' . -[**get_quantification_experimental**](FeaturesApi.md#get_quantification_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/quantification | EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. -[**get_spectral_library_match**](FeaturesApi.md#get_spectral_library_match) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId} | List of spectral library matches for the given 'alignedFeatureId'. +[**get_quant_table_row_experimental**](FeaturesApi.md#get_quant_table_row_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/quant-table-row | [EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId) +[**get_spectral_library_match**](FeaturesApi.md#get_spectral_library_match) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId} | Spectral library match for the given 'alignedFeatureId'. [**get_spectral_library_matches**](FeaturesApi.md#get_spectral_library_matches) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches | List of spectral library matches for the given 'alignedFeatureId'. [**get_spectral_library_matches_paged**](FeaturesApi.md#get_spectral_library_matches_paged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/page | Page of spectral library matches for the given 'alignedFeatureId'. [**get_spectral_library_matches_summary**](FeaturesApi.md#get_spectral_library_matches_summary) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/summary | Summarize matched reference spectra for the given 'alignedFeatureId'. -[**get_structure_annotated_ms_data_experimental**](FeaturesApi.md#get_structure_annotated_ms_data_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata | EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. -[**get_structure_annotated_spectrum_experimental**](FeaturesApi.md#get_structure_annotated_spectrum_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum | EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. +[**get_structure_annotated_ms_data_experimental**](FeaturesApi.md#get_structure_annotated_ms_data_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata | [EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey +[**get_structure_annotated_spectral_library_match_experimental**](FeaturesApi.md#get_structure_annotated_spectral_library_match_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}/annotated | [EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations +[**get_structure_annotated_spectrum_experimental**](FeaturesApi.md#get_structure_annotated_spectrum_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum | [EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey [**get_structure_candidates**](FeaturesApi.md#get_structure_candidates) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures | List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. [**get_structure_candidates_by_formula**](FeaturesApi.md#get_structure_candidates_by_formula) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures | List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. [**get_structure_candidates_by_formula_paged**](FeaturesApi.md#get_structure_candidates_by_formula_paged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures/page | Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. [**get_structure_candidates_paged**](FeaturesApi.md#get_structure_candidates_paged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures/page | Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. -[**get_traces_experimental**](FeaturesApi.md#get_traces_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces | EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +[**get_tags_for_aligned_features_experimental**](FeaturesApi.md#get_tags_for_aligned_features_experimental) | **GET** /api/projects/{projectId}/aligned-features/tags/{objectId} | [EXPERIMENTAL] Get all tags associated with this Object +[**get_traces_experimental**](FeaturesApi.md#get_traces_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces | [EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId) +[**remove_tag_from_aligned_feature_experimental**](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 # **add_aligned_features** @@ -75,7 +83,7 @@ with PySirius.ApiClient(configuration) as api_client: project_id = 'project_id_example' # str | project-space to import into. feature_import = [PySirius.FeatureImport()] # List[FeatureImport] | the feature data to be imported profile = PySirius.InstrumentProfile() # InstrumentProfile | profile describing the instrument used to measure the data. Used to merge spectra. (optional) - opt_fields = ["none"] # List[AlignedFeatureOptField] | set of optional fields to be included. Use 'none' to override defaults. (optional) (default to ["none"]) + opt_fields = [none] # List[AlignedFeatureOptField] | set of optional fields to be included. Use 'none' to override defaults. (optional) (default to [none]) try: # Import (aligned) features into the project. @@ -96,7 +104,7 @@ Name | Type | Description | Notes **project_id** | **str**| project-space to import into. | **feature_import** | [**List[FeatureImport]**](FeatureImport.md)| the feature data to be imported | **profile** | [**InstrumentProfile**](.md)| profile describing the instrument used to measure the data. Used to merge spectra. | [optional] - **opt_fields** | [**List[AlignedFeatureOptField]**](AlignedFeatureOptField.md)| set of optional fields to be included. Use 'none' to override defaults. | [optional] [default to ["none"]] + **opt_fields** | [**List[AlignedFeatureOptField]**](AlignedFeatureOptField.md)| set of optional fields to be included. Use 'none' to override defaults. | [optional] [default to [none]] ### Return type @@ -119,6 +127,150 @@ No authorization required [[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) +# **add_de_novo_structure_candidate** +> List[StructureCandidateFormula] add_de_novo_structure_candidate(project_id, aligned_feature_id, smiles=smiles) + +[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. + +[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. + +### Example + + +```python +import PySirius +from PySirius.models.structure_candidate_formula import StructureCandidateFormula +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.FeaturesApi(api_client) + project_id = 'project_id_example' # str | project-space to read from. + aligned_feature_id = 'aligned_feature_id_example' # str | feature (aligned over runs) the structure candidates belong to. + smiles = 'none' # str | smiles (optional) (default to 'none') + + try: + # [EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. + api_response = api_instance.add_de_novo_structure_candidate(project_id, aligned_feature_id, smiles=smiles) + print("The response of FeaturesApi->add_de_novo_structure_candidate:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling FeaturesApi->add_de_novo_structure_candidate: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to read from. | + **aligned_feature_id** | **str**| feature (aligned over runs) the structure candidates belong to. | + **smiles** | **str**| smiles | [optional] [default to 'none'] + +### Return type + +[**List[StructureCandidateFormula]**](StructureCandidateFormula.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | StructureCandidate of this feature candidate with specified optional fields. | - | + +[[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) + +# **add_tags_to_aligned_feature_experimental** +> List[Tag] add_tags_to_aligned_feature_experimental(project_id, aligned_feature_id, tag) + +[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project + +[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project. Tags with the same name will be overwritten.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.tag import Tag +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.FeaturesApi(api_client) + project_id = 'project_id_example' # str | project-space to add to. + aligned_feature_id = 'aligned_feature_id_example' # str | run to add tags to. + tag = [PySirius.Tag()] # List[Tag] | tags to add. + + try: + # [EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project + api_response = api_instance.add_tags_to_aligned_feature_experimental(project_id, aligned_feature_id, tag) + print("The response of FeaturesApi->add_tags_to_aligned_feature_experimental:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling FeaturesApi->add_tags_to_aligned_feature_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to add to. | + **aligned_feature_id** | **str**| run to add tags to. | + **tag** | [**List[Tag]**](Tag.md)| tags to add. | + +### Return type + +[**List[Tag]**](Tag.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | the tags that have been added | - | + +[[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) + # **delete_aligned_feature** > delete_aligned_feature(project_id, aligned_feature_id) @@ -256,9 +408,9 @@ No authorization required # **get_adduct_network_with_merged_traces_experimental** > TraceSetExperimental get_adduct_network_with_merged_traces_experimental(project_id, aligned_feature_id) -EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network -Returns the adduct network for a given aligned feature id together with all merged traces contained in the network. +[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. ### Example @@ -284,7 +436,7 @@ with PySirius.ApiClient(configuration) as api_client: aligned_feature_id = 'aligned_feature_id_example' # str | one feature that is considered the main feature of the adduct network try: - # EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + # [EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network api_response = api_instance.get_adduct_network_with_merged_traces_experimental(project_id, aligned_feature_id) print("The response of FeaturesApi->get_adduct_network_with_merged_traces_experimental:\n") pprint(api_response) @@ -324,7 +476,7 @@ No authorization required [[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_aligned_feature** -> AlignedFeature get_aligned_feature(project_id, aligned_feature_id, opt_fields=opt_fields) +> AlignedFeature get_aligned_feature(project_id, aligned_feature_id, ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields) Get feature (aligned over runs) with the given identifier from the specified project-space. @@ -353,11 +505,12 @@ with PySirius.ApiClient(configuration) as api_client: api_instance = PySirius.FeaturesApi(api_client) project_id = 'project_id_example' # str | project-space to read from. aligned_feature_id = 'aligned_feature_id_example' # str | identifier of feature (aligned over runs) to access. - opt_fields = ["none"] # List[AlignedFeatureOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to ["none"]) + ms_data_search_prepared = False # bool | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (optional) (default to False) + opt_fields = [none] # List[AlignedFeatureOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to [none]) try: # Get feature (aligned over runs) with the given identifier from the specified project-space. - api_response = api_instance.get_aligned_feature(project_id, aligned_feature_id, opt_fields=opt_fields) + api_response = api_instance.get_aligned_feature(project_id, aligned_feature_id, ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields) print("The response of FeaturesApi->get_aligned_feature:\n") pprint(api_response) except Exception as e: @@ -373,7 +526,8 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **str**| project-space to read from. | **aligned_feature_id** | **str**| identifier of feature (aligned over runs) to access. | - **opt_fields** | [**List[AlignedFeatureOptField]**](AlignedFeatureOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **ms_data_search_prepared** | **bool**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to False] + **opt_fields** | [**List[AlignedFeatureOptField]**](AlignedFeatureOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -396,8 +550,78 @@ No authorization required [[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_aligned_feature_quality_experimental** +> AlignedFeatureQualityExperimental get_aligned_feature_quality_experimental(project_id, aligned_feature_id) + +[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId) + +[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)
Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.aligned_feature_quality_experimental import AlignedFeatureQualityExperimental +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.FeaturesApi(api_client) + project_id = 'project_id_example' # str | project-space to read from. + aligned_feature_id = 'aligned_feature_id_example' # str | identifier of feature (aligned over runs) to access. + + try: + # [EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId) + api_response = api_instance.get_aligned_feature_quality_experimental(project_id, aligned_feature_id) + print("The response of FeaturesApi->get_aligned_feature_quality_experimental:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling FeaturesApi->get_aligned_feature_quality_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to read from. | + **aligned_feature_id** | **str**| identifier of feature (aligned over runs) to access. | + +### Return type + +[**AlignedFeatureQualityExperimental**](AlignedFeatureQualityExperimental.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | AlignedFeatureQuality quality information of the respective feature. | - | + +[[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_aligned_features** -> List[AlignedFeature] get_aligned_features(project_id, opt_fields=opt_fields) +> List[AlignedFeature] get_aligned_features(project_id, ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields) Get all available features (aligned over runs) in the given project-space. @@ -425,11 +649,12 @@ with PySirius.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = PySirius.FeaturesApi(api_client) project_id = 'project_id_example' # str | project-space to read from. - opt_fields = ["none"] # List[AlignedFeatureOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to ["none"]) + ms_data_search_prepared = False # bool | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (optional) (default to False) + opt_fields = [none] # List[AlignedFeatureOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to [none]) try: # Get all available features (aligned over runs) in the given project-space. - api_response = api_instance.get_aligned_features(project_id, opt_fields=opt_fields) + api_response = api_instance.get_aligned_features(project_id, ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields) print("The response of FeaturesApi->get_aligned_features:\n") pprint(api_response) except Exception as e: @@ -444,7 +669,8 @@ with PySirius.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **str**| project-space to read from. | - **opt_fields** | [**List[AlignedFeatureOptField]**](AlignedFeatureOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **ms_data_search_prepared** | **bool**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to False] + **opt_fields** | [**List[AlignedFeatureOptField]**](AlignedFeatureOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -467,12 +693,12 @@ No authorization required [[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_aligned_features_paged** -> PagedModelAlignedFeature get_aligned_features_paged(project_id, page=page, size=size, sort=sort, opt_fields=opt_fields) +# **get_aligned_features_by_group_experimental** +> PagedModelAlignedFeature get_aligned_features_by_group_experimental(project_id, group_name, page=page, size=size, sort=sort, opt_fields=opt_fields) -Get all available features (aligned over runs) in the given project-space. +[EXPERIMENTAL] Get features (aligned over runs) by tag group -Get all available features (aligned over runs) in the given project-space. +[EXPERIMENTAL] Get features (aligned over runs) by tag group.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. ### Example @@ -495,19 +721,20 @@ configuration = PySirius.Configuration( with PySirius.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = PySirius.FeaturesApi(api_client) - project_id = 'project_id_example' # str | project-space to read from. + project_id = 'project_id_example' # str | project-space to delete from. + group_name = 'group_name_example' # str | tag group name. page = 0 # int | Zero-based page index (0..N) (optional) (default to 0) size = 20 # int | The size of the page to be returned (optional) (default to 20) sort = ['sort_example'] # List[str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) - opt_fields = ["none"] # List[AlignedFeatureOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to ["none"]) + opt_fields = [none] # List[AlignedFeatureOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to [none]) try: - # Get all available features (aligned over runs) in the given project-space. - api_response = api_instance.get_aligned_features_paged(project_id, page=page, size=size, sort=sort, opt_fields=opt_fields) - print("The response of FeaturesApi->get_aligned_features_paged:\n") + # [EXPERIMENTAL] Get features (aligned over runs) by tag group + api_response = api_instance.get_aligned_features_by_group_experimental(project_id, group_name, page=page, size=size, sort=sort, opt_fields=opt_fields) + print("The response of FeaturesApi->get_aligned_features_by_group_experimental:\n") pprint(api_response) except Exception as e: - print("Exception when calling FeaturesApi->get_aligned_features_paged: %s\n" % e) + print("Exception when calling FeaturesApi->get_aligned_features_by_group_experimental: %s\n" % e) ``` @@ -517,11 +744,12 @@ with PySirius.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **project_id** | **str**| project-space to read from. | + **project_id** | **str**| project-space to delete from. | + **group_name** | **str**| tag group name. | **page** | **int**| Zero-based page index (0..N) | [optional] [default to 0] **size** | **int**| The size of the page to be returned | [optional] [default to 20] **sort** | [**List[str]**](str.md)| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] - **opt_fields** | [**List[AlignedFeatureOptField]**](AlignedFeatureOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **opt_fields** | [**List[AlignedFeatureOptField]**](AlignedFeatureOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -540,23 +768,103 @@ No authorization required | Status code | Description | Response headers | |-------------|-------------|------------------| -**200** | AlignedFeatures with additional annotations and MS/MS data (if specified). | - | +**200** | tagged features (aligned over runs) | - | [[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_aligned_features_quality_experimental** -> AlignedFeatureQualityExperimental get_aligned_features_quality_experimental(project_id, aligned_feature_id) +# **get_aligned_features_by_tag_experimental** +> PagedModelAlignedFeature get_aligned_features_by_tag_experimental(project_id, filter=filter, page=page, size=size, sort=sort, opt_fields=opt_fields) -EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +[EXPERIMENTAL] Get features (aligned over runs) by tag -Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space. +[EXPERIMENTAL] Get features (aligned over runs) by tag.
The filter string must contain one or more clauses. A clause is prefÃxed by a field name.
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). Tag name based field need to be prefixed with the namespace tags.. Possible value types of tags are bool, integer, real, text, date, or time - tag value
The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.
A clause may be:
tags.MyTagA:sampletags.MyTagA:"Some Text"tags.MyTagA:/[mb]oat/tags.MyTagB<3[ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3] Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )
The syntax allows to build complex filter queries such as:
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
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. ### Example ```python import PySirius -from PySirius.models.aligned_feature_quality_experimental import AlignedFeatureQualityExperimental +from PySirius.models.aligned_feature_opt_field import AlignedFeatureOptField +from PySirius.models.paged_model_aligned_feature import PagedModelAlignedFeature +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.FeaturesApi(api_client) + project_id = 'project_id_example' # str | project space to get features (aligned over runs) from. + filter = '' # str | tag filter. (optional) (default to '') + page = 0 # int | Zero-based page index (0..N) (optional) (default to 0) + size = 20 # int | The size of the page to be returned (optional) (default to 20) + sort = ['sort_example'] # List[str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) + opt_fields = [] # List[AlignedFeatureOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to []) + + try: + # [EXPERIMENTAL] Get features (aligned over runs) by tag + api_response = api_instance.get_aligned_features_by_tag_experimental(project_id, filter=filter, page=page, size=size, sort=sort, opt_fields=opt_fields) + print("The response of FeaturesApi->get_aligned_features_by_tag_experimental:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling FeaturesApi->get_aligned_features_by_tag_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project space to get features (aligned over runs) from. | + **filter** | **str**| tag filter. | [optional] [default to ''] + **page** | **int**| Zero-based page index (0..N) | [optional] [default to 0] + **size** | **int**| The size of the page to be returned | [optional] [default to 20] + **sort** | [**List[str]**](str.md)| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] + **opt_fields** | [**List[AlignedFeatureOptField]**](AlignedFeatureOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to []] + +### Return type + +[**PagedModelAlignedFeature**](PagedModelAlignedFeature.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | tagged features (aligned over runs) | - | + +[[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_aligned_features_paged** +> PagedModelAlignedFeature get_aligned_features_paged(project_id, page=page, size=size, sort=sort, ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields) + +Get all available features (aligned over runs) in the given project-space. + +Get all available features (aligned over runs) in the given project-space. + +### Example + + +```python +import PySirius +from PySirius.models.aligned_feature_opt_field import AlignedFeatureOptField +from PySirius.models.paged_model_aligned_feature import PagedModelAlignedFeature from PySirius.rest import ApiException from pprint import pprint @@ -572,15 +880,19 @@ with PySirius.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = PySirius.FeaturesApi(api_client) project_id = 'project_id_example' # str | project-space to read from. - aligned_feature_id = 'aligned_feature_id_example' # str | identifier of feature (aligned over runs) to access. + page = 0 # int | Zero-based page index (0..N) (optional) (default to 0) + size = 20 # int | The size of the page to be returned (optional) (default to 20) + sort = ['sort_example'] # List[str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) + ms_data_search_prepared = False # bool | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (optional) (default to False) + opt_fields = [none] # List[AlignedFeatureOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to [none]) try: - # EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. - api_response = api_instance.get_aligned_features_quality_experimental(project_id, aligned_feature_id) - print("The response of FeaturesApi->get_aligned_features_quality_experimental:\n") + # Get all available features (aligned over runs) in the given project-space. + api_response = api_instance.get_aligned_features_paged(project_id, page=page, size=size, sort=sort, ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields) + print("The response of FeaturesApi->get_aligned_features_paged:\n") pprint(api_response) except Exception as e: - print("Exception when calling FeaturesApi->get_aligned_features_quality_experimental: %s\n" % e) + print("Exception when calling FeaturesApi->get_aligned_features_paged: %s\n" % e) ``` @@ -591,11 +903,15 @@ with PySirius.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **str**| project-space to read from. | - **aligned_feature_id** | **str**| identifier of feature (aligned over runs) to access. | + **page** | **int**| Zero-based page index (0..N) | [optional] [default to 0] + **size** | **int**| The size of the page to be returned | [optional] [default to 20] + **sort** | [**List[str]**](str.md)| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] + **ms_data_search_prepared** | **bool**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to False] + **opt_fields** | [**List[AlignedFeatureOptField]**](AlignedFeatureOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type -[**AlignedFeatureQualityExperimental**](AlignedFeatureQualityExperimental.md) +[**PagedModelAlignedFeature**](PagedModelAlignedFeature.md) ### Authorization @@ -610,16 +926,16 @@ No authorization required | Status code | Description | Response headers | |-------------|-------------|------------------| -**200** | AlignedFeatureQuality quality information of the respective feature. | - | +**200** | AlignedFeatures with additional annotations and MS/MS data (if specified). | - | [[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_best_matching_compound_classes** > CompoundClasses get_best_matching_compound_classes(project_id, aligned_feature_id, formula_id) -Best matching compound classes, Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, +Return Best matching compound classes for given formulaId -Best matching compound classes, Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, +Return Best matching compound classes for given formulaId.
Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, ### Example @@ -646,7 +962,7 @@ with PySirius.ApiClient(configuration) as api_client: formula_id = 'formula_id_example' # str | identifier of the requested formula result try: - # Best matching compound classes, Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, + # Return Best matching compound classes for given formulaId api_response = api_instance.get_best_matching_compound_classes(project_id, aligned_feature_id, formula_id) print("The response of FeaturesApi->get_best_matching_compound_classes:\n") pprint(api_response) @@ -862,7 +1178,7 @@ with PySirius.ApiClient(configuration) as api_client: project_id = 'project_id_example' # str | project-space to read from. aligned_feature_id = 'aligned_feature_id_example' # str | feature (aligned over runs) the formula result belongs to. formula_id = 'formula_id_example' # str | identifier of the requested formula result - opt_fields = ["none"] # List[StructureCandidateOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to ["none"]) + opt_fields = [none] # List[StructureCandidateOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to [none]) try: # List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. @@ -870,7 +1186,85 @@ with PySirius.ApiClient(configuration) as api_client: print("The response of FeaturesApi->get_de_novo_structure_candidates_by_formula:\n") pprint(api_response) except Exception as e: - print("Exception when calling FeaturesApi->get_de_novo_structure_candidates_by_formula: %s\n" % e) + print("Exception when calling FeaturesApi->get_de_novo_structure_candidates_by_formula: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to read from. | + **aligned_feature_id** | **str**| feature (aligned over runs) the formula result belongs to. | + **formula_id** | **str**| identifier of the requested formula result | + **opt_fields** | [**List[StructureCandidateOptField]**](StructureCandidateOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] + +### Return type + +[**List[StructureCandidateScored]**](StructureCandidateScored.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | StructureCandidate of this formula candidate with specified optional fields. | - | + +[[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_de_novo_structure_candidates_by_formula_paged** +> PagedModelStructureCandidateScored get_de_novo_structure_candidates_by_formula_paged(project_id, aligned_feature_id, formula_id, page=page, size=size, sort=sort, opt_fields=opt_fields) + +Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + +Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + +### Example + + +```python +import PySirius +from PySirius.models.paged_model_structure_candidate_scored import PagedModelStructureCandidateScored +from PySirius.models.structure_candidate_opt_field import StructureCandidateOptField +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.FeaturesApi(api_client) + project_id = 'project_id_example' # str | project-space to read from. + aligned_feature_id = 'aligned_feature_id_example' # str | feature (aligned over runs) the formula result belongs to. + formula_id = 'formula_id_example' # str | identifier of the requested formula result + page = 0 # int | Zero-based page index (0..N) (optional) (default to 0) + size = 20 # int | The size of the page to be returned (optional) (default to 20) + sort = ['sort_example'] # List[str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) + opt_fields = [none] # List[StructureCandidateOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to [none]) + + try: + # Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + api_response = api_instance.get_de_novo_structure_candidates_by_formula_paged(project_id, aligned_feature_id, formula_id, page=page, size=size, sort=sort, opt_fields=opt_fields) + print("The response of FeaturesApi->get_de_novo_structure_candidates_by_formula_paged:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling FeaturesApi->get_de_novo_structure_candidates_by_formula_paged: %s\n" % e) ``` @@ -883,11 +1277,14 @@ Name | Type | Description | Notes **project_id** | **str**| project-space to read from. | **aligned_feature_id** | **str**| feature (aligned over runs) the formula result belongs to. | **formula_id** | **str**| identifier of the requested formula result | - **opt_fields** | [**List[StructureCandidateOptField]**](StructureCandidateOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **page** | **int**| Zero-based page index (0..N) | [optional] [default to 0] + **size** | **int**| The size of the page to be returned | [optional] [default to 20] + **sort** | [**List[str]**](str.md)| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] + **opt_fields** | [**List[StructureCandidateOptField]**](StructureCandidateOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type -[**List[StructureCandidateScored]**](StructureCandidateScored.md) +[**PagedModelStructureCandidateScored**](PagedModelStructureCandidateScored.md) ### Authorization @@ -906,19 +1303,19 @@ No authorization required [[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_de_novo_structure_candidates_by_formula_paged** -> PagedModelStructureCandidateScored get_de_novo_structure_candidates_by_formula_paged(project_id, aligned_feature_id, formula_id, page=page, size=size, sort=sort, opt_fields=opt_fields) +# **get_de_novo_structure_candidates_paged** +> PagedModelStructureCandidateFormula get_de_novo_structure_candidates_paged(project_id, aligned_feature_id, page=page, size=size, sort=sort, opt_fields=opt_fields) -Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. +Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. -Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. +Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. ### Example ```python import PySirius -from PySirius.models.paged_model_structure_candidate_scored import PagedModelStructureCandidateScored +from PySirius.models.paged_model_structure_candidate_formula import PagedModelStructureCandidateFormula from PySirius.models.structure_candidate_opt_field import StructureCandidateOptField from PySirius.rest import ApiException from pprint import pprint @@ -935,20 +1332,19 @@ with PySirius.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = PySirius.FeaturesApi(api_client) project_id = 'project_id_example' # str | project-space to read from. - aligned_feature_id = 'aligned_feature_id_example' # str | feature (aligned over runs) the formula result belongs to. - formula_id = 'formula_id_example' # str | identifier of the requested formula result + aligned_feature_id = 'aligned_feature_id_example' # str | feature (aligned over runs) the structure candidates belong to. page = 0 # int | Zero-based page index (0..N) (optional) (default to 0) size = 20 # int | The size of the page to be returned (optional) (default to 20) sort = ['sort_example'] # List[str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) - opt_fields = ["none"] # List[StructureCandidateOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to ["none"]) + opt_fields = [none] # List[StructureCandidateOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to [none]) try: - # Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. - api_response = api_instance.get_de_novo_structure_candidates_by_formula_paged(project_id, aligned_feature_id, formula_id, page=page, size=size, sort=sort, opt_fields=opt_fields) - print("The response of FeaturesApi->get_de_novo_structure_candidates_by_formula_paged:\n") + # Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. + api_response = api_instance.get_de_novo_structure_candidates_paged(project_id, aligned_feature_id, page=page, size=size, sort=sort, opt_fields=opt_fields) + print("The response of FeaturesApi->get_de_novo_structure_candidates_paged:\n") pprint(api_response) except Exception as e: - print("Exception when calling FeaturesApi->get_de_novo_structure_candidates_by_formula_paged: %s\n" % e) + print("Exception when calling FeaturesApi->get_de_novo_structure_candidates_paged: %s\n" % e) ``` @@ -959,16 +1355,15 @@ with PySirius.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **str**| project-space to read from. | - **aligned_feature_id** | **str**| feature (aligned over runs) the formula result belongs to. | - **formula_id** | **str**| identifier of the requested formula result | + **aligned_feature_id** | **str**| feature (aligned over runs) the structure candidates belong to. | **page** | **int**| Zero-based page index (0..N) | [optional] [default to 0] **size** | **int**| The size of the page to be returned | [optional] [default to 20] **sort** | [**List[str]**](str.md)| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] - **opt_fields** | [**List[StructureCandidateOptField]**](StructureCandidateOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **opt_fields** | [**List[StructureCandidateOptField]**](StructureCandidateOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type -[**PagedModelStructureCandidateScored**](PagedModelStructureCandidateScored.md) +[**PagedModelStructureCandidateFormula**](PagedModelStructureCandidateFormula.md) ### Authorization @@ -983,24 +1378,24 @@ No authorization required | Status code | Description | Response headers | |-------------|-------------|------------------| -**200** | StructureCandidate of this formula candidate with specified optional fields. | - | +**200** | StructureCandidate of this feature (aligned over runs) candidate with specified optional fields. | - | [[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_de_novo_structure_candidates_paged** -> PagedModelStructureCandidateFormula get_de_novo_structure_candidates_paged(project_id, aligned_feature_id, page=page, size=size, sort=sort, opt_fields=opt_fields) +# **get_feature_quant_table_experimental** +> QuantTableExperimental get_feature_quant_table_experimental(project_id, type=type) -Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. +[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId) -Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. +[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId).
Returns the full quantification table. The quantification table contains a quantities of the features within all runs they are contained in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. ### Example ```python import PySirius -from PySirius.models.paged_model_structure_candidate_formula import PagedModelStructureCandidateFormula -from PySirius.models.structure_candidate_opt_field import StructureCandidateOptField +from PySirius.models.quant_measure import QuantMeasure +from PySirius.models.quant_table_experimental import QuantTableExperimental from PySirius.rest import ApiException from pprint import pprint @@ -1016,19 +1411,15 @@ with PySirius.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = PySirius.FeaturesApi(api_client) project_id = 'project_id_example' # str | project-space to read from. - aligned_feature_id = 'aligned_feature_id_example' # str | feature (aligned over runs) the structure candidates belong to. - page = 0 # int | Zero-based page index (0..N) (optional) (default to 0) - size = 20 # int | The size of the page to be returned (optional) (default to 20) - sort = ['sort_example'] # List[str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) - opt_fields = ["none"] # List[StructureCandidateOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to ["none"]) + type = PySirius.QuantMeasure() # QuantMeasure | quantification type. (optional) try: - # Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. - api_response = api_instance.get_de_novo_structure_candidates_paged(project_id, aligned_feature_id, page=page, size=size, sort=sort, opt_fields=opt_fields) - print("The response of FeaturesApi->get_de_novo_structure_candidates_paged:\n") + # [EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId) + api_response = api_instance.get_feature_quant_table_experimental(project_id, type=type) + print("The response of FeaturesApi->get_feature_quant_table_experimental:\n") pprint(api_response) except Exception as e: - print("Exception when calling FeaturesApi->get_de_novo_structure_candidates_paged: %s\n" % e) + print("Exception when calling FeaturesApi->get_feature_quant_table_experimental: %s\n" % e) ``` @@ -1039,15 +1430,11 @@ with PySirius.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **str**| project-space to read from. | - **aligned_feature_id** | **str**| feature (aligned over runs) the structure candidates belong to. | - **page** | **int**| Zero-based page index (0..N) | [optional] [default to 0] - **size** | **int**| The size of the page to be returned | [optional] [default to 20] - **sort** | [**List[str]**](str.md)| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] - **opt_fields** | [**List[StructureCandidateOptField]**](StructureCandidateOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **type** | [**QuantMeasure**](.md)| quantification type. | [optional] ### Return type -[**PagedModelStructureCandidateFormula**](PagedModelStructureCandidateFormula.md) +[**QuantTableExperimental**](QuantTableExperimental.md) ### Authorization @@ -1062,16 +1449,16 @@ No authorization required | Status code | Description | Response headers | |-------------|-------------|------------------| -**200** | StructureCandidate of this feature (aligned over runs) candidate with specified optional fields. | - | +**200** | Quant table if akk feature in this project | - | [[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_fingerprint_prediction** > List[float] get_fingerprint_prediction(project_id, aligned_feature_id, formula_id) -Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier This fingerprint is used to perform structure database search and predict compound classes. +Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId) -Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier This fingerprint is used to perform structure database search and predict compound classes. +Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)
This fingerprint is used to perform structure database search and predict compound classes. ### Example @@ -1097,7 +1484,7 @@ with PySirius.ApiClient(configuration) as api_client: formula_id = 'formula_id_example' # str | identifier of the requested formula result try: - # Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier This fingerprint is used to perform structure database search and predict compound classes. + # Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId) api_response = api_instance.get_fingerprint_prediction(project_id, aligned_feature_id, formula_id) print("The response of FeaturesApi->get_fingerprint_prediction:\n") pprint(api_response) @@ -1138,11 +1525,11 @@ No authorization required [[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_formula_annotated_ms_ms_data** -> AnnotatedMsMsData get_formula_annotated_ms_ms_data(project_id, aligned_feature_id, formula_id) +> AnnotatedMsMsData get_formula_annotated_ms_ms_data(project_id, aligned_feature_id, formula_id, ms_data_search_prepared=ms_data_search_prepared) -Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. +Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId -Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. +Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId.
Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. ### Example @@ -1167,10 +1554,11 @@ with PySirius.ApiClient(configuration) as api_client: project_id = 'project_id_example' # str | project-space to read from. aligned_feature_id = 'aligned_feature_id_example' # str | feature (aligned over runs) the formula result belongs to. formula_id = 'formula_id_example' # str | identifier of the requested formula result + ms_data_search_prepared = False # bool | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (optional) (default to False) try: - # Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. - api_response = api_instance.get_formula_annotated_ms_ms_data(project_id, aligned_feature_id, formula_id) + # Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId + api_response = api_instance.get_formula_annotated_ms_ms_data(project_id, aligned_feature_id, formula_id, ms_data_search_prepared=ms_data_search_prepared) print("The response of FeaturesApi->get_formula_annotated_ms_ms_data:\n") pprint(api_response) except Exception as e: @@ -1187,6 +1575,7 @@ Name | Type | Description | Notes **project_id** | **str**| project-space to read from. | **aligned_feature_id** | **str**| feature (aligned over runs) the formula result belongs to. | **formula_id** | **str**| identifier of the requested formula result | + **ms_data_search_prepared** | **bool**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to False] ### Return type @@ -1210,11 +1599,11 @@ No authorization required [[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_formula_annotated_spectrum** -> AnnotatedSpectrum get_formula_annotated_spectrum(project_id, aligned_feature_id, formula_id, spectrum_index=spectrum_index) +> AnnotatedSpectrum get_formula_annotated_spectrum(project_id, aligned_feature_id, formula_id, spectrum_index=spectrum_index, search_prepared=search_prepared) -Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. +Returns a fragmentation spectrum (e -Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. +Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier
These annotations are only available if a fragmentation tree is available. ### Example @@ -1240,10 +1629,11 @@ with PySirius.ApiClient(configuration) as api_client: aligned_feature_id = 'aligned_feature_id_example' # str | feature (aligned over runs) the formula result belongs to. formula_id = 'formula_id_example' # str | identifier of the requested formula result spectrum_index = -1 # int | index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) (optional) (default to -1) + search_prepared = False # bool | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (optional) (default to False) try: - # Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. - api_response = api_instance.get_formula_annotated_spectrum(project_id, aligned_feature_id, formula_id, spectrum_index=spectrum_index) + # Returns a fragmentation spectrum (e + api_response = api_instance.get_formula_annotated_spectrum(project_id, aligned_feature_id, formula_id, spectrum_index=spectrum_index, search_prepared=search_prepared) print("The response of FeaturesApi->get_formula_annotated_spectrum:\n") pprint(api_response) except Exception as e: @@ -1261,6 +1651,7 @@ Name | Type | Description | Notes **aligned_feature_id** | **str**| feature (aligned over runs) the formula result belongs to. | **formula_id** | **str**| identifier of the requested formula result | **spectrum_index** | **int**| index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) | [optional] [default to -1] + **search_prepared** | **bool**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to False] ### Return type @@ -1284,7 +1675,7 @@ No authorization required [[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_formula_candidate** -> FormulaCandidate get_formula_candidate(project_id, aligned_feature_id, formula_id, opt_fields=opt_fields) +> FormulaCandidate get_formula_candidate(project_id, aligned_feature_id, formula_id, ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields) FormulaResultContainers for the given 'formulaId' with minimal information. @@ -1314,11 +1705,12 @@ with PySirius.ApiClient(configuration) as api_client: project_id = 'project_id_example' # str | project-space to read from. aligned_feature_id = 'aligned_feature_id_example' # str | feature (aligned over runs) the formula result belongs to. formula_id = 'formula_id_example' # str | identifier of the requested formula result - opt_fields = ["none"] # List[FormulaCandidateOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to ["none"]) + ms_data_search_prepared = False # bool | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (optional) (default to False) + opt_fields = [none] # List[FormulaCandidateOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to [none]) try: # FormulaResultContainers for the given 'formulaId' with minimal information. - api_response = api_instance.get_formula_candidate(project_id, aligned_feature_id, formula_id, opt_fields=opt_fields) + api_response = api_instance.get_formula_candidate(project_id, aligned_feature_id, formula_id, ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields) print("The response of FeaturesApi->get_formula_candidate:\n") pprint(api_response) except Exception as e: @@ -1335,7 +1727,8 @@ Name | Type | Description | Notes **project_id** | **str**| project-space to read from. | **aligned_feature_id** | **str**| feature (aligned over runs) the formula result belongs to. | **formula_id** | **str**| identifier of the requested formula result | - **opt_fields** | [**List[FormulaCandidateOptField]**](FormulaCandidateOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **ms_data_search_prepared** | **bool**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to False] + **opt_fields** | [**List[FormulaCandidateOptField]**](FormulaCandidateOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -1359,7 +1752,7 @@ No authorization required [[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_formula_candidates** -> List[FormulaCandidate] get_formula_candidates(project_id, aligned_feature_id, opt_fields=opt_fields) +> List[FormulaCandidate] get_formula_candidates(project_id, aligned_feature_id, ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields) List of FormulaResultContainers available for this feature with minimal information. @@ -1388,11 +1781,12 @@ with PySirius.ApiClient(configuration) as api_client: api_instance = PySirius.FeaturesApi(api_client) project_id = 'project_id_example' # str | project-space to read from. aligned_feature_id = 'aligned_feature_id_example' # str | feature (aligned over runs) the formula result belongs to. + ms_data_search_prepared = False # bool | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (optional) (default to False) opt_fields = ["none"] # List[FormulaCandidateOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to ["none"]) try: # List of FormulaResultContainers available for this feature with minimal information. - api_response = api_instance.get_formula_candidates(project_id, aligned_feature_id, opt_fields=opt_fields) + api_response = api_instance.get_formula_candidates(project_id, aligned_feature_id, ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields) print("The response of FeaturesApi->get_formula_candidates:\n") pprint(api_response) except Exception as e: @@ -1408,6 +1802,7 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **str**| project-space to read from. | **aligned_feature_id** | **str**| feature (aligned over runs) the formula result belongs to. | + **ms_data_search_prepared** | **bool**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to False] **opt_fields** | [**List[FormulaCandidateOptField]**](FormulaCandidateOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] ### Return type @@ -1432,7 +1827,7 @@ No authorization required [[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_formula_candidates_paged** -> PagedModelFormulaCandidate get_formula_candidates_paged(project_id, aligned_feature_id, page=page, size=size, sort=sort, opt_fields=opt_fields) +> PagedModelFormulaCandidate get_formula_candidates_paged(project_id, aligned_feature_id, page=page, size=size, sort=sort, ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields) Page of FormulaResultContainers available for this feature with minimal information. @@ -1464,11 +1859,12 @@ with PySirius.ApiClient(configuration) as api_client: page = 0 # int | Zero-based page index (0..N) (optional) (default to 0) size = 20 # int | The size of the page to be returned (optional) (default to 20) sort = ['sort_example'] # List[str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) - opt_fields = ["none"] # List[FormulaCandidateOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to ["none"]) + ms_data_search_prepared = False # bool | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (optional) (default to False) + opt_fields = [none] # List[FormulaCandidateOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to [none]) try: # Page of FormulaResultContainers available for this feature with minimal information. - api_response = api_instance.get_formula_candidates_paged(project_id, aligned_feature_id, page=page, size=size, sort=sort, opt_fields=opt_fields) + api_response = api_instance.get_formula_candidates_paged(project_id, aligned_feature_id, page=page, size=size, sort=sort, ms_data_search_prepared=ms_data_search_prepared, opt_fields=opt_fields) print("The response of FeaturesApi->get_formula_candidates_paged:\n") pprint(api_response) except Exception as e: @@ -1487,7 +1883,8 @@ Name | Type | Description | Notes **page** | **int**| Zero-based page index (0..N) | [optional] [default to 0] **size** | **int**| The size of the page to be returned | [optional] [default to 20] **sort** | [**List[str]**](str.md)| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] - **opt_fields** | [**List[FormulaCandidateOptField]**](FormulaCandidateOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **ms_data_search_prepared** | **bool**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to False] + **opt_fields** | [**List[FormulaCandidateOptField]**](FormulaCandidateOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -1513,9 +1910,9 @@ No authorization required # **get_frag_tree** > FragmentationTree get_frag_tree(project_id, aligned_feature_id, formula_id) -Returns fragmentation tree (SIRIUS) for the given formula result identifier This tree is used to rank formula candidates (treeScore). +Returns fragmentation tree (SIRIUS) for the given formula result identifier -Returns fragmentation tree (SIRIUS) for the given formula result identifier This tree is used to rank formula candidates (treeScore). +Returns fragmentation tree (SIRIUS) for the given formula result identifier
This tree is used to rank formula candidates (treeScore). ### Example @@ -1542,7 +1939,7 @@ with PySirius.ApiClient(configuration) as api_client: formula_id = 'formula_id_example' # str | identifier of the requested formula result try: - # Returns fragmentation tree (SIRIUS) for the given formula result identifier This tree is used to rank formula candidates (treeScore). + # Returns fragmentation tree (SIRIUS) for the given formula result identifier api_response = api_instance.get_frag_tree(project_id, aligned_feature_id, formula_id) print("The response of FeaturesApi->get_frag_tree:\n") pprint(api_response) @@ -1585,9 +1982,9 @@ No authorization required # **get_isotope_pattern_annotation** > IsotopePatternAnnotation get_isotope_pattern_annotation(project_id, aligned_feature_id, formula_id) -Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. +Returns Isotope pattern information for given formulaId -Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore). +Returns Isotope pattern information for given formulaId
Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore). ### Example @@ -1614,7 +2011,7 @@ with PySirius.ApiClient(configuration) as api_client: formula_id = 'formula_id_example' # str | identifier of the requested formula result try: - # Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. + # Returns Isotope pattern information for given formulaId api_response = api_instance.get_isotope_pattern_annotation(project_id, aligned_feature_id, formula_id) print("The response of FeaturesApi->get_isotope_pattern_annotation:\n") pprint(api_response) @@ -1657,9 +2054,9 @@ No authorization required # **get_lipid_annotation** > LipidAnnotation get_lipid_annotation(project_id, aligned_feature_id, formula_id) -Returns Lipid annotation (ElGordo) for the given formula result identifier. +Returns Lipid annotation (ElGordo) for the given formulaId -Returns Lipid annotation (ElGordo) for the given formula result identifier. ElGordo lipid annotation runs as part of the SIRIUS formula identification step. +Returns Lipid annotation (ElGordo) for the given formulaId.
ElGordo lipid annotation runs as part of the SIRIUS formula identification step. ### Example @@ -1686,7 +2083,7 @@ with PySirius.ApiClient(configuration) as api_client: formula_id = 'formula_id_example' # str | identifier of the requested formula result try: - # Returns Lipid annotation (ElGordo) for the given formula result identifier. + # Returns Lipid annotation (ElGordo) for the given formulaId api_response = api_instance.get_lipid_annotation(project_id, aligned_feature_id, formula_id) print("The response of FeaturesApi->get_lipid_annotation:\n") pprint(api_response) @@ -1727,7 +2124,7 @@ No authorization required [[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_ms_data** -> MsData get_ms_data(project_id, aligned_feature_id) +> MsData get_ms_data(project_id, aligned_feature_id, ms_data_search_prepared=ms_data_search_prepared) Mass Spec data (input data) for the given 'alignedFeatureId' . @@ -1754,11 +2151,12 @@ with PySirius.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = PySirius.FeaturesApi(api_client) project_id = 'project_id_example' # str | project-space to read from. - aligned_feature_id = 'aligned_feature_id_example' # str | feature (aligned over runs) the Mass Spec data belong sto. + aligned_feature_id = 'aligned_feature_id_example' # str | feature (aligned over runs) the Mass Spec data belongs to. + ms_data_search_prepared = False # bool | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (optional) (default to False) try: # Mass Spec data (input data) for the given 'alignedFeatureId' . - api_response = api_instance.get_ms_data(project_id, aligned_feature_id) + api_response = api_instance.get_ms_data(project_id, aligned_feature_id, ms_data_search_prepared=ms_data_search_prepared) print("The response of FeaturesApi->get_ms_data:\n") pprint(api_response) except Exception as e: @@ -1773,7 +2171,8 @@ with PySirius.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **str**| project-space to read from. | - **aligned_feature_id** | **str**| feature (aligned over runs) the Mass Spec data belong sto. | + **aligned_feature_id** | **str**| feature (aligned over runs) the Mass Spec data belongs to. | + **ms_data_search_prepared** | **bool**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to False] ### Return type @@ -1796,20 +2195,20 @@ No authorization required [[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_quantification_experimental** -> QuantificationTableExperimental get_quantification_experimental(project_id, aligned_feature_id, type=type) +# **get_quant_table_row_experimental** +> QuantTableExperimental get_quant_table_row_experimental(project_id, aligned_feature_id, type=type) -EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId) -Returns a single quantification table row for the given feature. The quantification table contains the intensity of the feature within all samples it is contained in. +[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId).
The quantification table contains a quantity of the feature within all samples it is contained in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. ### Example ```python import PySirius -from PySirius.models.quantification_measure import QuantificationMeasure -from PySirius.models.quantification_table_experimental import QuantificationTableExperimental +from PySirius.models.quant_measure import QuantMeasure +from PySirius.models.quant_table_experimental import QuantTableExperimental from PySirius.rest import ApiException from pprint import pprint @@ -1825,16 +2224,16 @@ with PySirius.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = PySirius.FeaturesApi(api_client) project_id = 'project_id_example' # str | project-space to read from. - aligned_feature_id = 'aligned_feature_id_example' # str | feature which intensities should be read out - type = PySirius.QuantificationMeasure() # QuantificationMeasure | quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex. (optional) + aligned_feature_id = 'aligned_feature_id_example' # str | feature which quantity should be read out + type = PySirius.QuantMeasure() # QuantMeasure | quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex. (optional) try: - # EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. - api_response = api_instance.get_quantification_experimental(project_id, aligned_feature_id, type=type) - print("The response of FeaturesApi->get_quantification_experimental:\n") + # [EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId) + api_response = api_instance.get_quant_table_row_experimental(project_id, aligned_feature_id, type=type) + print("The response of FeaturesApi->get_quant_table_row_experimental:\n") pprint(api_response) except Exception as e: - print("Exception when calling FeaturesApi->get_quantification_experimental: %s\n" % e) + print("Exception when calling FeaturesApi->get_quant_table_row_experimental: %s\n" % e) ``` @@ -1845,12 +2244,12 @@ with PySirius.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **str**| project-space to read from. | - **aligned_feature_id** | **str**| feature which intensities should be read out | - **type** | [**QuantificationMeasure**](.md)| quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex. | [optional] + **aligned_feature_id** | **str**| feature which quantity should be read out | + **type** | [**QuantMeasure**](.md)| quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex. | [optional] ### Return type -[**QuantificationTableExperimental**](QuantificationTableExperimental.md) +[**QuantTableExperimental**](QuantTableExperimental.md) ### Authorization @@ -1872,9 +2271,9 @@ No authorization required # **get_spectral_library_match** > SpectralLibraryMatch get_spectral_library_match(project_id, aligned_feature_id, match_id, opt_fields=opt_fields) -List of spectral library matches for the given 'alignedFeatureId'. +Spectral library match for the given 'alignedFeatureId'. -List of spectral library matches for the given 'alignedFeatureId'. +Spectral library match for the given 'alignedFeatureId'. ### Example @@ -1899,11 +2298,11 @@ with PySirius.ApiClient(configuration) as api_client: api_instance = PySirius.FeaturesApi(api_client) project_id = 'project_id_example' # str | project-space to read from. aligned_feature_id = 'aligned_feature_id_example' # str | feature (aligned over runs) the structure candidates belong to. - match_id = 'match_id_example' # str | - opt_fields = ["none"] # List[SpectralLibraryMatchOptField] | (optional) (default to ["none"]) + match_id = 'match_id_example' # str | id of the library match to be returned. + opt_fields = [none] # List[SpectralLibraryMatchOptField] | (optional) (default to [none]) try: - # List of spectral library matches for the given 'alignedFeatureId'. + # Spectral library match for the given 'alignedFeatureId'. api_response = api_instance.get_spectral_library_match(project_id, aligned_feature_id, match_id, opt_fields=opt_fields) print("The response of FeaturesApi->get_spectral_library_match:\n") pprint(api_response) @@ -1920,8 +2319,8 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **str**| project-space to read from. | **aligned_feature_id** | **str**| feature (aligned over runs) the structure candidates belong to. | - **match_id** | **str**| | - **opt_fields** | [**List[SpectralLibraryMatchOptField]**](SpectralLibraryMatchOptField.md)| | [optional] [default to ["none"]] + **match_id** | **str**| id of the library match to be returned. | + **opt_fields** | [**List[SpectralLibraryMatchOptField]**](SpectralLibraryMatchOptField.md)| | [optional] [default to [none]] ### Return type @@ -1940,7 +2339,7 @@ No authorization required | Status code | Description | Response headers | |-------------|-------------|------------------| -**200** | Spectral library matches of this feature (aligned over runs). | - | +**200** | Spectral library match with requested mathcId. | - | [[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) @@ -2059,7 +2458,7 @@ with PySirius.ApiClient(configuration) as api_client: min_shared_peaks = 1 # int | (optional) (default to 1) min_similarity = 0.2 # float | (optional) (default to 0.2) inchi_key = '' # str | (optional) (default to '') - opt_fields = ["none"] # List[SpectralLibraryMatchOptField] | (optional) (default to ["none"]) + opt_fields = [none] # List[SpectralLibraryMatchOptField] | (optional) (default to [none]) try: # Page of spectral library matches for the given 'alignedFeatureId'. @@ -2085,7 +2484,7 @@ Name | Type | Description | Notes **min_shared_peaks** | **int**| | [optional] [default to 1] **min_similarity** | **float**| | [optional] [default to 0.2] **inchi_key** | **str**| | [optional] [default to ''] - **opt_fields** | [**List[SpectralLibraryMatchOptField]**](SpectralLibraryMatchOptField.md)| | [optional] [default to ["none"]] + **opt_fields** | [**List[SpectralLibraryMatchOptField]**](SpectralLibraryMatchOptField.md)| | [optional] [default to [none]] ### Return type @@ -2185,11 +2584,11 @@ No authorization required [[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_structure_annotated_ms_data_experimental** -> AnnotatedMsMsData get_structure_annotated_ms_data_experimental(project_id, aligned_feature_id, formula_id, inchi_key) +> AnnotatedMsMsData get_structure_annotated_ms_data_experimental(project_id, aligned_feature_id, formula_id, inchi_key, ms_data_search_prepared=ms_data_search_prepared) -EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. +[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey -Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses for the given formula result identifier and structure candidate inChIKey. These annotations are only available if a fragmentation tree and the structure candidate are available. +[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey.
Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses for the given formula result identifier and structure candidate inChIKey. These annotations are only available if a fragmentation tree and the structure candidate are available.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. ### Example @@ -2215,10 +2614,11 @@ with PySirius.ApiClient(configuration) as api_client: aligned_feature_id = 'aligned_feature_id_example' # str | feature (aligned over runs) the formula result belongs to. formula_id = 'formula_id_example' # str | identifier of the requested formula result inchi_key = 'inchi_key_example' # str | 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation + ms_data_search_prepared = False # bool | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (optional) (default to False) try: - # EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. - api_response = api_instance.get_structure_annotated_ms_data_experimental(project_id, aligned_feature_id, formula_id, inchi_key) + # [EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey + api_response = api_instance.get_structure_annotated_ms_data_experimental(project_id, aligned_feature_id, formula_id, inchi_key, ms_data_search_prepared=ms_data_search_prepared) print("The response of FeaturesApi->get_structure_annotated_ms_data_experimental:\n") pprint(api_response) except Exception as e: @@ -2236,6 +2636,7 @@ Name | Type | Description | Notes **aligned_feature_id** | **str**| feature (aligned over runs) the formula result belongs to. | **formula_id** | **str**| identifier of the requested formula result | **inchi_key** | **str**| 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation | + **ms_data_search_prepared** | **bool**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to False] ### Return type @@ -2258,12 +2659,84 @@ No authorization required [[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_structure_annotated_spectral_library_match_experimental** +> AnnotatedSpectrum get_structure_annotated_spectral_library_match_experimental(project_id, aligned_feature_id, match_id) + +[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations + +[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.annotated_spectrum import AnnotatedSpectrum +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.FeaturesApi(api_client) + project_id = 'project_id_example' # str | project-space to read from. + aligned_feature_id = 'aligned_feature_id_example' # str | feature (aligned over runs) the structure candidates belong to. + match_id = 'match_id_example' # str | id of the library match to be returned. + + try: + # [EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations + api_response = api_instance.get_structure_annotated_spectral_library_match_experimental(project_id, aligned_feature_id, match_id) + print("The response of FeaturesApi->get_structure_annotated_spectral_library_match_experimental:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling FeaturesApi->get_structure_annotated_spectral_library_match_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to read from. | + **aligned_feature_id** | **str**| feature (aligned over runs) the structure candidates belong to. | + **match_id** | **str**| id of the library match to be returned. | + +### Return type + +[**AnnotatedSpectrum**](AnnotatedSpectrum.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Spectral library match with requested mathcId. | - | + +[[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_structure_annotated_spectrum_experimental** -> AnnotatedSpectrum get_structure_annotated_spectrum_experimental(project_id, aligned_feature_id, formula_id, inchi_key, spectrum_index=spectrum_index) +> AnnotatedSpectrum get_structure_annotated_spectrum_experimental(project_id, aligned_feature_id, formula_id, inchi_key, spectrum_index=spectrum_index, search_prepared=search_prepared) -EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. +[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey -Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. +[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey
Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the selected formula result These annotations are only available if a fragmentation tree is available.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. ### Example @@ -2290,10 +2763,11 @@ with PySirius.ApiClient(configuration) as api_client: formula_id = 'formula_id_example' # str | identifier of the requested formula result inchi_key = 'inchi_key_example' # str | 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation spectrum_index = -1 # int | index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) (optional) (default to -1) + search_prepared = False # bool | (optional) (default to False) try: - # EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. - api_response = api_instance.get_structure_annotated_spectrum_experimental(project_id, aligned_feature_id, formula_id, inchi_key, spectrum_index=spectrum_index) + # [EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey + api_response = api_instance.get_structure_annotated_spectrum_experimental(project_id, aligned_feature_id, formula_id, inchi_key, spectrum_index=spectrum_index, search_prepared=search_prepared) print("The response of FeaturesApi->get_structure_annotated_spectrum_experimental:\n") pprint(api_response) except Exception as e: @@ -2312,6 +2786,7 @@ Name | Type | Description | Notes **formula_id** | **str**| identifier of the requested formula result | **inchi_key** | **str**| 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation | **spectrum_index** | **int**| index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) | [optional] [default to -1] + **search_prepared** | **bool**| | [optional] [default to False] ### Return type @@ -2364,7 +2839,7 @@ with PySirius.ApiClient(configuration) as api_client: api_instance = PySirius.FeaturesApi(api_client) project_id = 'project_id_example' # str | project-space to read from. aligned_feature_id = 'aligned_feature_id_example' # str | feature (aligned over runs) the structure candidates belong to. - opt_fields = ["none"] # List[StructureCandidateOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to ["none"]) + opt_fields = [none] # List[StructureCandidateOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to [none]) try: # List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. @@ -2384,7 +2859,7 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **str**| project-space to read from. | **aligned_feature_id** | **str**| feature (aligned over runs) the structure candidates belong to. | - **opt_fields** | [**List[StructureCandidateOptField]**](StructureCandidateOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **opt_fields** | [**List[StructureCandidateOptField]**](StructureCandidateOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -2438,7 +2913,7 @@ with PySirius.ApiClient(configuration) as api_client: project_id = 'project_id_example' # str | project-space to read from. aligned_feature_id = 'aligned_feature_id_example' # str | feature (aligned over runs) the formula result belongs to. formula_id = 'formula_id_example' # str | identifier of the requested formula result - opt_fields = ["none"] # List[StructureCandidateOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to ["none"]) + opt_fields = [none] # List[StructureCandidateOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to [none]) try: # List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. @@ -2459,7 +2934,7 @@ Name | Type | Description | Notes **project_id** | **str**| project-space to read from. | **aligned_feature_id** | **str**| feature (aligned over runs) the formula result belongs to. | **formula_id** | **str**| identifier of the requested formula result | - **opt_fields** | [**List[StructureCandidateOptField]**](StructureCandidateOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **opt_fields** | [**List[StructureCandidateOptField]**](StructureCandidateOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -2516,7 +2991,7 @@ with PySirius.ApiClient(configuration) as api_client: page = 0 # int | Zero-based page index (0..N) (optional) (default to 0) size = 20 # int | The size of the page to be returned (optional) (default to 20) sort = ['sort_example'] # List[str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) - opt_fields = ["none"] # List[StructureCandidateOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to ["none"]) + opt_fields = [none] # List[StructureCandidateOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to [none]) try: # Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. @@ -2540,7 +3015,7 @@ Name | Type | Description | Notes **page** | **int**| Zero-based page index (0..N) | [optional] [default to 0] **size** | **int**| The size of the page to be returned | [optional] [default to 20] **sort** | [**List[str]**](str.md)| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] - **opt_fields** | [**List[StructureCandidateOptField]**](StructureCandidateOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **opt_fields** | [**List[StructureCandidateOptField]**](StructureCandidateOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -2596,7 +3071,7 @@ with PySirius.ApiClient(configuration) as api_client: page = 0 # int | Zero-based page index (0..N) (optional) (default to 0) size = 20 # int | The size of the page to be returned (optional) (default to 20) sort = ['sort_example'] # List[str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) - opt_fields = ["none"] # List[StructureCandidateOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to ["none"]) + opt_fields = [none] # List[StructureCandidateOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to [none]) try: # Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. @@ -2619,7 +3094,7 @@ Name | Type | Description | Notes **page** | **int**| Zero-based page index (0..N) | [optional] [default to 0] **size** | **int**| The size of the page to be returned | [optional] [default to 20] **sort** | [**List[str]**](str.md)| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] - **opt_fields** | [**List[StructureCandidateOptField]**](StructureCandidateOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **opt_fields** | [**List[StructureCandidateOptField]**](StructureCandidateOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -2642,12 +3117,82 @@ No authorization required [[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_tags_for_aligned_features_experimental** +> List[Tag] get_tags_for_aligned_features_experimental(project_id, object_id) + +[EXPERIMENTAL] Get all tags associated with this Object + +[EXPERIMENTAL] Get all tags associated with this Object + +### Example + + +```python +import PySirius +from PySirius.models.tag import Tag +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.FeaturesApi(api_client) + project_id = 'project_id_example' # str | project-space to get from. + object_id = 'object_id_example' # str | object to get tags for. + + try: + # [EXPERIMENTAL] Get all tags associated with this Object + api_response = api_instance.get_tags_for_aligned_features_experimental(project_id, object_id) + print("The response of FeaturesApi->get_tags_for_aligned_features_experimental:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling FeaturesApi->get_tags_for_aligned_features_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to get from. | + **object_id** | **str**| object to get tags for. | + +### Return type + +[**List[Tag]**](Tag.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | the tags of the requested object | - | + +[[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_traces_experimental** > TraceSetExperimental get_traces_experimental(project_id, aligned_feature_id, include_all=include_all) -EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId) -Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis, but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data. However, this also means that all traces can be directly compared against each other, as they all lie in the same retention time axis. By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set, it also includes samples in which the same trace appears in. +[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId).
Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis, but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data. However, this also means that all traces can be directly compared against each other, as they all lie in the same retention time axis. By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set, it also includes samples in which the same trace appears in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. ### Example @@ -2674,7 +3219,7 @@ with PySirius.ApiClient(configuration) as api_client: include_all = False # bool | when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature. (optional) (default to False) try: - # EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + # [EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId) api_response = api_instance.get_traces_experimental(project_id, aligned_feature_id, include_all=include_all) print("The response of FeaturesApi->get_traces_experimental:\n") pprint(api_response) @@ -2714,3 +3259,72 @@ No authorization required [[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) +# **remove_tag_from_aligned_feature_experimental** +> remove_tag_from_aligned_feature_experimental(project_id, aligned_feature_id, tag_name) + +[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space + +[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### 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.FeaturesApi(api_client) + project_id = 'project_id_example' # str | project-space to delete from. + aligned_feature_id = 'aligned_feature_id_example' # str | feature (aligned over runs) to delete tag from. + tag_name = 'tag_name_example' # str | name of the tag to delete. + + try: + # [EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space + api_instance.remove_tag_from_aligned_feature_experimental(project_id, aligned_feature_id, tag_name) + except Exception as e: + print("Exception when calling FeaturesApi->remove_tag_from_aligned_feature_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to delete from. | + **aligned_feature_id** | **str**| feature (aligned over runs) to delete tag from. | + **tag_name** | **str**| name of the tag to delete. | + +### 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 | +|-------------|-------------|------------------| +**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) + diff --git a/client-api_python/generated/docs/FoldChange.md b/client-api_python/generated/docs/FoldChange.md new file mode 100644 index 00000000..18fe240e --- /dev/null +++ b/client-api_python/generated/docs/FoldChange.md @@ -0,0 +1,35 @@ +# FoldChange + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**left_group** | **str** | | [optional] +**right_group** | **str** | | [optional] +**aggregation** | [**AggregationType**](AggregationType.md) | | [optional] +**quantification** | [**QuantMeasure**](QuantMeasure.md) | | [optional] +**quant_type** | [**QuantRowType**](QuantRowType.md) | | +**object_id** | **str** | | +**fold_change** | **float** | | + +## Example + +```python +from PySirius.models.fold_change import FoldChange + +# TODO update the JSON string below +json = "{}" +# create an instance of FoldChange from a JSON string +fold_change_instance = FoldChange.from_json(json) +# print the JSON string representation of the object +print(FoldChange.to_json()) + +# convert the object into a dict +fold_change_dict = fold_change_instance.to_dict() +# create an instance of FoldChange from a dict +fold_change_from_dict = FoldChange.from_dict(fold_change_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_python/generated/docs/FormulaCandidate.md b/client-api_python/generated/docs/FormulaCandidate.md index 65b258af..93c29e78 100644 --- a/client-api_python/generated/docs/FormulaCandidate.md +++ b/client-api_python/generated/docs/FormulaCandidate.md @@ -19,13 +19,13 @@ Name | Type | Description | Notes **num_of_explainable_peaks** | **int** | | [optional] **total_explained_intensity** | **float** | | [optional] **median_mass_deviation** | [**Deviation**](Deviation.md) | | [optional] -**fragmentation_tree** | [**FragmentationTree**](FragmentationTree.md) | | [optional] -**annotated_spectrum** | [**AnnotatedSpectrum**](AnnotatedSpectrum.md) | | [optional] -**isotope_pattern_annotation** | [**IsotopePatternAnnotation**](IsotopePatternAnnotation.md) | | [optional] -**lipid_annotation** | [**LipidAnnotation**](LipidAnnotation.md) | | [optional] -**predicted_fingerprint** | **List[Optional[float]]** | Probabilistic molecular fingerprint predicted by CSI:FingerID | [optional] -**compound_classes** | [**CompoundClasses**](CompoundClasses.md) | | [optional] -**canopus_prediction** | [**CanopusPrediction**](CanopusPrediction.md) | | [optional] +**fragmentation_tree** | [**FragmentationTree**](FragmentationTree.md) | The fragmentation tree that belongs to this molecular formula candidate (produces the treeScore). | [optional] +**annotated_spectrum** | [**AnnotatedSpectrum**](AnnotatedSpectrum.md) | Fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses | [optional] +**isotope_pattern_annotation** | [**IsotopePatternAnnotation**](IsotopePatternAnnotation.md) | The measured and simulated isotope pattern that have been compared against each other to produce the isotopeScore. | [optional] +**lipid_annotation** | [**LipidAnnotation**](LipidAnnotation.md) | ElGordo lipid annotation of this candidate. NULL if annotation was not requested. lipidAnnotation.lipidSpecies == NULL if candidate has not been classified as a lipid | [optional] +**predicted_fingerprint** | **List[float]** | Probabilistic molecular fingerprint predicted by CSI:FingerID | [optional] +**compound_classes** | [**CompoundClasses**](CompoundClasses.md) | Most likely compound classes for different levels of each ontology for this FormulaCandidate (predictedFingerprint) | [optional] +**canopus_prediction** | [**CanopusPrediction**](CanopusPrediction.md) | All classes predicted by canopus for this FormulaCandidate (predictedFingerprint) | [optional] ## Example diff --git a/client-api_python/generated/docs/GuiApi.md b/client-api_python/generated/docs/GuiApi.md deleted file mode 100644 index aa6e9448..00000000 --- a/client-api_python/generated/docs/GuiApi.md +++ /dev/null @@ -1,209 +0,0 @@ -# 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/Job.md b/client-api_python/generated/docs/Job.md index fa7e0ae3..f9d532ce 100644 --- a/client-api_python/generated/docs/Job.md +++ b/client-api_python/generated/docs/Job.md @@ -8,10 +8,10 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **id** | **str** | Unique identifier to access the job via the API | [optional] **command** | **str** | Command string of the executed Task | [optional] -**progress** | [**JobProgress**](JobProgress.md) | | [optional] -**affected_compound_ids** | **List[Optional[str]]** | List of compoundIds that are affected by this job. This lis will also contain compoundIds where not all features of the compound are affected by the job. If this job is creating compounds (e.g. data import jobs) this value will be NULL until the jobs has finished | [optional] -**affected_aligned_feature_ids** | **List[Optional[str]]** | List of alignedFeatureIds that are affected by this job. If this job is creating features (e.g. data import jobs) this value will be NULL until the jobs has finished | [optional] -**job_effect** | [**JobEffect**](JobEffect.md) | | [optional] +**progress** | [**JobProgress**](JobProgress.md) | Optional progress information of this job | [optional] +**affected_compound_ids** | **List[str]** | List of compoundIds that are affected by this job. This lis will also contain compoundIds where not all features of the compound are affected by the job. If this job is creating compounds (e.g. data import jobs) this value will be NULL until the jobs has finished | [optional] +**affected_aligned_feature_ids** | **List[str]** | List of alignedFeatureIds that are affected by this job. If this job is creating features (e.g. data import jobs) this value will be NULL until the jobs has finished | [optional] +**job_effect** | [**JobEffect**](JobEffect.md) | Effect this job has. The affected ids are added, removed or modified. Null if job does not affect features/compounds Not available/null if affected Ids are not requested | [optional] ## Example diff --git a/client-api_python/generated/docs/JobProgress.md b/client-api_python/generated/docs/JobProgress.md index fb328017..48e0f58c 100644 --- a/client-api_python/generated/docs/JobProgress.md +++ b/client-api_python/generated/docs/JobProgress.md @@ -7,7 +7,7 @@ Progress information of a computation job that has already been submitted to SIR Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **indeterminate** | **bool** | Is the progress indeterminate or not | [optional] -**state** | [**JobState**](JobState.md) | | [optional] +**state** | [**JobState**](JobState.md) | Current state of the Jobs in the SIRIUS internal Job scheduler WAITING: Waiting for submission to ExecutorService (e.g. due to dependent jobs) READY: Ready for submission but not yet enqueued for submission to ExecutorService. QUEUED: Enqueued for submission to ExecutorService. SUBMITTED: Submitted and waiting to be executed. RUNNING: Job is running. CANCELED: Jobs is finished due to cancellation by user or dependent jobs. FAILED: Job is finished but failed. DONE: Job finished successfully. | [optional] **current_progress** | **int** | Current progress value of the job. | [optional] **max_progress** | **int** | Progress value to reach (might also change during execution) | [optional] **message** | **str** | Progress information and warnings. | [optional] diff --git a/client-api_python/generated/docs/JobSubmission.md b/client-api_python/generated/docs/JobSubmission.md index aec0ff53..b64a5e9e 100644 --- a/client-api_python/generated/docs/JobSubmission.md +++ b/client-api_python/generated/docs/JobSubmission.md @@ -6,20 +6,20 @@ Object to submit a job to be executed by SIRIUS Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**compound_ids** | **List[Optional[str]]** | Compounds that should be the input for this Job Will be converted to the respective alignedFeatureIds for computation. At least one compoundId or alignedFeatureId needs to be specified. | [optional] -**aligned_feature_ids** | **List[Optional[str]]** | Features (aligned over runs) that should be the input for this Job At least one compoundId or alignedFeatureId needs to be specified. | [optional] -**fallback_adducts** | **List[Optional[str]]** | Describes how to deal with Adducts: Fallback adducts are considered if the auto detection did not find any indication for an ion mode. 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]+ 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]- | [optional] -**enforced_adducts** | **List[Optional[str]]** | Describes how to deal with Adducts: Enforced adducts that are always considered. 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]+ 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]- | [optional] -**detectable_adducts** | **List[Optional[str]]** | 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). 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]+ 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]- | [optional] +**compound_ids** | **List[str]** | Compounds that should be the input for this Job Will be converted to the respective alignedFeatureIds for computation. At least one compoundId or alignedFeatureId needs to be specified. | [optional] +**aligned_feature_ids** | **List[str]** | Features (aligned over runs) that should be the input for this Job At least one compoundId or alignedFeatureId needs to be specified. | [optional] +**fallback_adducts** | **List[str]** | Describes how to deal with Adducts: Fallback adducts are considered if the auto detection did not find any indication for an ion mode. 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]+ 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]- | [optional] +**enforced_adducts** | **List[str]** | Describes how to deal with Adducts: Enforced adducts that are always considered. 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]+ 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]- | [optional] +**detectable_adducts** | **List[str]** | 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). 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]+ 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]- | [optional] **recompute** | **bool** | Indicate if already existing result for a tool to be executed should be overwritten or not. | [optional] -**spectra_search_params** | [**SpectralLibrarySearch**](SpectralLibrarySearch.md) | | [optional] -**formula_id_params** | [**Sirius**](Sirius.md) | | [optional] -**zodiac_params** | [**Zodiac**](Zodiac.md) | | [optional] -**fingerprint_prediction_params** | [**FingerprintPrediction**](FingerprintPrediction.md) | | [optional] -**canopus_params** | [**Canopus**](Canopus.md) | | [optional] -**structure_db_search_params** | [**StructureDbSearch**](StructureDbSearch.md) | | [optional] -**ms_novelist_params** | [**MsNovelist**](MsNovelist.md) | | [optional] -**config_map** | **Dict[str, Optional[str]]** | As an alternative to the object based parameters, this map allows to store key value pairs of ALL SIRIUS parameters. All possible parameters can be retrieved from SIRIUS via the respective endpoint. | [optional] +**spectra_search_params** | [**SpectralLibrarySearch**](SpectralLibrarySearch.md) | Parameter Object for spectral library search tool (CLI-Tool: spectra-search). Library search results can be used to enhance formula search results If NULL the tool will not be executed. | [optional] +**formula_id_params** | [**Sirius**](Sirius.md) | Parameter Object for molecular formula identification tool (CLI-Tool: formula, sirius). If NULL the tool will not be executed. | [optional] +**zodiac_params** | [**Zodiac**](Zodiac.md) | Parameter Object for network based molecular formula re-ranking (CLI-Tool: zodiac). If NULL the tool will not be executed. | [optional] +**fingerprint_prediction_params** | [**FingerprintPrediction**](FingerprintPrediction.md) | Parameter Object for Fingerprint prediction with CSI:FingerID (CLI-Tool: fingerint). If NULL the tool will not be executed. | [optional] +**canopus_params** | [**Canopus**](Canopus.md) | Parameter Object for CANOPUS compound class prediction tool (CLI-Tool: canopus). If NULL the tool will not be executed. | [optional] +**structure_db_search_params** | [**StructureDbSearch**](StructureDbSearch.md) | Parameter Object for structure database search with CSI:FingerID (CLI-Tool: structure). If NULL the tool will not be executed. | [optional] +**ms_novelist_params** | [**MsNovelist**](MsNovelist.md) | Parameter Object for MsNovelist DeNovo structure generation (CLI-Tool: msnovelist) If NULL the tool will not be executed. | [optional] +**config_map** | **Dict[str, str]** | As an alternative to the object based parameters, this map allows to store key value pairs of ALL SIRIUS parameters. All possible parameters can be retrieved from SIRIUS via the respective endpoint. | [optional] ## Example diff --git a/client-api_python/generated/docs/JobsApi.md b/client-api_python/generated/docs/JobsApi.md index 1d616e05..fb880bd3 100644 --- a/client-api_python/generated/docs/JobsApi.md +++ b/client-api_python/generated/docs/JobsApi.md @@ -7,10 +7,11 @@ Method | HTTP request | Description [**delete_job**](JobsApi.md#delete_job) | **DELETE** /api/projects/{projectId}/jobs/{jobId} | Delete job. [**delete_job_config**](JobsApi.md#delete_job_config) | **DELETE** /api/job-configs/{name} | Delete job configuration with given name. [**delete_jobs**](JobsApi.md#delete_jobs) | **DELETE** /api/projects/{projectId}/jobs | * Delete ALL jobs. +[**get_command**](JobsApi.md#get_command) | **POST** /api/job-configs/get-command | Get a CLI command for the given job configuration. [**get_default_job_config**](JobsApi.md#get_default_job_config) | **GET** /api/default-job-config | Request default job configuration [**get_job**](JobsApi.md#get_job) | **GET** /api/projects/{projectId}/jobs/{jobId} | Get job information and its current state and progress (if available). [**get_job_config**](JobsApi.md#get_job_config) | **GET** /api/job-configs/{name} | Request job configuration with given name. -[**get_job_config_names**](JobsApi.md#get_job_config_names) | **GET** /api/job-config-names | DEPRECATED: use /job-configs to get all configs with names. +[**get_job_config_names**](JobsApi.md#get_job_config_names) | **GET** /api/job-config-names | [DEPRECATED] Get all (non-default) job configuration names [**get_job_configs**](JobsApi.md#get_job_configs) | **GET** /api/job-configs | Request all available job configurations [**get_jobs**](JobsApi.md#get_jobs) | **GET** /api/projects/{projectId}/jobs | Get List of all available jobs with information such as current state and progress (if available). [**get_jobs_paged**](JobsApi.md#get_jobs_paged) | **GET** /api/projects/{projectId}/jobs/page | Get Page of jobs with information such as current state and progress (if available). @@ -225,6 +226,74 @@ No authorization required [[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_command** +> List[str] get_command(job_submission) + +Get a CLI command for the given job configuration. + +Get a CLI command for the given job configuration. + +### Example + + +```python +import PySirius +from PySirius.models.job_submission import JobSubmission +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.JobsApi(api_client) + job_submission = PySirius.JobSubmission() # JobSubmission | + + try: + # Get a CLI command for the given job configuration. + api_response = api_instance.get_command(job_submission) + print("The response of JobsApi->get_command:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling JobsApi->get_command: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **job_submission** | [**JobSubmission**](JobSubmission.md)| | + +### Return type + +**List[str]** + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **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_default_job_config** > JobSubmission get_default_job_config(include_config_map=include_config_map, move_parameters_to_config_map=move_parameters_to_config_map, include_custom_dbs_for_structure_search=include_custom_dbs_for_structure_search) @@ -254,7 +323,7 @@ with PySirius.ApiClient(configuration) as api_client: api_instance = PySirius.JobsApi(api_client) include_config_map = False # bool | if true, generic configmap with-defaults will be included (optional) (default to False) move_parameters_to_config_map = False # bool | if true, object-based parameters will be converted to and added to the generic configMap parameters (optional) (default to False) - include_custom_dbs_for_structure_search = False # bool | if true, default database selection of structure db search contains also all available custom DB. (optional) (default to False) + include_custom_dbs_for_structure_search = False # bool | if true, default database selection of structure db search spectral library search contains also all available custom DB. If No custom dbs are selected, spectral library search is disabled by default. (optional) (default to False) try: # Request default job configuration @@ -274,7 +343,7 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **include_config_map** | **bool**| if true, generic configmap with-defaults will be included | [optional] [default to False] **move_parameters_to_config_map** | **bool**| if true, object-based parameters will be converted to and added to the generic configMap parameters | [optional] [default to False] - **include_custom_dbs_for_structure_search** | **bool**| if true, default database selection of structure db search contains also all available custom DB. | [optional] [default to False] + **include_custom_dbs_for_structure_search** | **bool**| if true, default database selection of structure db search spectral library search contains also all available custom DB. If No custom dbs are selected, spectral library search is disabled by default. | [optional] [default to False] ### Return type @@ -327,7 +396,7 @@ with PySirius.ApiClient(configuration) as api_client: api_instance = PySirius.JobsApi(api_client) project_id = 'project_id_example' # str | project-space to run jobs on job_id = 'job_id_example' # str | of the job to be returned - opt_fields = ["progress"] # List[JobOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to ["progress"]) + opt_fields = [progress] # List[JobOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to [progress]) try: # Get job information and its current state and progress (if available). @@ -347,7 +416,7 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **str**| project-space to run jobs on | **job_id** | **str**| of the job to be returned | - **opt_fields** | [**List[JobOptField]**](JobOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["progress"]] + **opt_fields** | [**List[JobOptField]**](JobOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [progress]] ### Return type @@ -443,9 +512,9 @@ No authorization required # **get_job_config_names** > List[str] get_job_config_names() -DEPRECATED: use /job-configs to get all configs with names. +[DEPRECATED] Get all (non-default) job configuration names -Get all (non-default) job configuration names +[DEPRECATED] Get all (non-default) job configuration names
[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. ### Example @@ -468,7 +537,7 @@ with PySirius.ApiClient(configuration) as api_client: api_instance = PySirius.JobsApi(api_client) try: - # DEPRECATED: use /job-configs to get all configs with names. + # [DEPRECATED] Get all (non-default) job configuration names api_response = api_instance.get_job_config_names() print("The response of JobsApi->get_job_config_names:\n") pprint(api_response) @@ -670,7 +739,7 @@ with PySirius.ApiClient(configuration) as api_client: page = 0 # int | Zero-based page index (0..N) (optional) (default to 0) size = 20 # int | The size of the page to be returned (optional) (default to 20) sort = ['sort_example'] # List[str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) - opt_fields = ["none"] # List[JobOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to ["none"]) + opt_fields = [none] # List[JobOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to [none]) try: # Get Page of jobs with information such as current state and progress (if available). @@ -692,7 +761,7 @@ Name | Type | Description | Notes **page** | **int**| Zero-based page index (0..N) | [optional] [default to 0] **size** | **int**| The size of the page to be returned | [optional] [default to 20] **sort** | [**List[str]**](str.md)| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] - **opt_fields** | [**List[JobOptField]**](JobOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **opt_fields** | [**List[JobOptField]**](JobOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -962,7 +1031,7 @@ with PySirius.ApiClient(configuration) as api_client: job_config_name = 'job_config_name_example' # str | name if the config to be used request_body = ['request_body_example'] # List[str] | List of alignedFeatureIds to be computed recompute = True # bool | enable or disable recompute. If null the stored value will be used. (optional) - opt_fields = ["command","progress"] # List[JobOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to ["command","progress"]) + opt_fields = [command, progress] # List[JobOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to [command, progress]) try: # Start computation for given compounds and with parameters from a stored job-config. @@ -984,7 +1053,7 @@ Name | Type | Description | Notes **job_config_name** | **str**| name if the config to be used | **request_body** | [**List[str]**](str.md)| List of alignedFeatureIds to be computed | **recompute** | **bool**| enable or disable recompute. If null the stored value will be used. | [optional] - **opt_fields** | [**List[JobOptField]**](JobOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["command","progress"]] + **opt_fields** | [**List[JobOptField]**](JobOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [command, progress]] ### Return type diff --git a/client-api_python/generated/docs/LcmsSubmissionParameters.md b/client-api_python/generated/docs/LcmsSubmissionParameters.md index da84c412..dcafa257 100644 --- a/client-api_python/generated/docs/LcmsSubmissionParameters.md +++ b/client-api_python/generated/docs/LcmsSubmissionParameters.md @@ -6,6 +6,11 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **align_lcms_runs** | **bool** | Specifies whether LC/MS runs should be aligned | [optional] [default to True] +**noise_intensity** | **float** | Noise level under which all peaks are considered to be likely noise. A peak has to be at least 3x noise level to be picked as feature. Peaks with MS/MS are still picked even though they might be below noise level. If not specified, the noise intensity is detected automatically from data. We recommend to NOT specify this parameter, as the automated detection is usually sufficient. | [optional] [default to -1] +**trace_max_mass_deviation** | [**Deviation**](Deviation.md) | Maximal allowed mass deviation for peaks in ms1 to be considered as belonging to the same trace. | [optional] +**align_max_mass_deviation** | [**Deviation**](Deviation.md) | Maximal allowed mass deviation for aligning features. If not specified, this parameter is estimated from data. | [optional] +**align_max_retention_time_deviation** | **float** | Maximal allowed retention time error in seconds for aligning features. If not specified, this parameter is estimated from data. | [optional] [default to -1] +**min_snr** | **float** | 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 | [optional] [default to 3] ## Example diff --git a/client-api_python/generated/docs/LicenseInfo.md b/client-api_python/generated/docs/LicenseInfo.md index e85e2ac5..8f11f669 100644 --- a/client-api_python/generated/docs/LicenseInfo.md +++ b/client-api_python/generated/docs/LicenseInfo.md @@ -7,8 +7,8 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **user_email** | **str** | Email address of the user account this license information belongs to. | [optional] **user_id** | **str** | User ID (uid) of the user account this license information belongs to. | [optional] -**subscription** | [**Subscription**](Subscription.md) | | [optional] -**consumables** | [**SubscriptionConsumables**](SubscriptionConsumables.md) | | [optional] +**subscription** | [**Subscription**](Subscription.md) | The active subscription that was used the requested the information | [optional] +**consumables** | [**SubscriptionConsumables**](SubscriptionConsumables.md) | Status of the consumable resources of the {@link Subscription Subscription}. | [optional] **terms** | [**List[Term]**](Term.md) | | [optional] ## Example diff --git a/client-api_python/generated/docs/MetabolicTransformation.md b/client-api_python/generated/docs/MetabolicTransformation.md new file mode 100644 index 00000000..a49d33ca --- /dev/null +++ b/client-api_python/generated/docs/MetabolicTransformation.md @@ -0,0 +1,22 @@ +# MetabolicTransformation + + +## Enum + +* `PHASE_1_CYP450` (value: `'PHASE_1_CYP450'`) + +* `EC_BASED` (value: `'EC_BASED'`) + +* `PHASE_2` (value: `'PHASE_2'`) + +* `HUMAN_GUT` (value: `'HUMAN_GUT'`) + +* `ALL_HUMAN` (value: `'ALL_HUMAN'`) + +* `ABIOTIC` (value: `'ABIOTIC'`) + +* `HUMAN_CUSTOM_MULTI` (value: `'HUMAN_CUSTOM_MULTI'`) + +[[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_python/generated/docs/MsData.md b/client-api_python/generated/docs/MsData.md index fb737aab..309cbb0f 100644 --- a/client-api_python/generated/docs/MsData.md +++ b/client-api_python/generated/docs/MsData.md @@ -1,11 +1,12 @@ # MsData -The MsData wraps all spectral input data belonging to a (aligned) feature. All spectra fields are optional. However, at least one Spectrum field needs to be set to create a valid MsData Object. The different types of spectra fields can be extended to adapt to other MassSpec measurement techniques not covered yet.
Each Feature can have: - One merged MS/MS spectrum (optional) - One merged MS spectrum (optional) - many MS/MS spectra (optional) - many MS spectra (optional)
Each non-merged spectrum has an index which can be used to access the spectrum.
In the future we might add some additional information like chromatographic peak or something similar +The MsData wraps all spectral input data belonging to a (aligned) feature. All spectra fields are optional. However, at least one Spectrum field needs to be set to create a valid MsData Object. The different types of spectra fields can be extended to adapt to other MassSpec measurement techniques not covered yet.
Each Feature can have: - One extracted isotope pattern (optional) - One merged MS/MS spectrum (optional) - One merged MS spectrum (optional) - many MS/MS spectra (optional) - many MS spectra (optional)
Each non-merged spectrum has an index which can be used to access the spectrum.
In the future we might add some additional information like chromatographic peak or something similar ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- +**isotope_pattern** | [**BasicSpectrum**](BasicSpectrum.md) | | [optional] **merged_ms1** | [**BasicSpectrum**](BasicSpectrum.md) | | [optional] **merged_ms2** | [**BasicSpectrum**](BasicSpectrum.md) | | [optional] **ms1_spectra** | [**List[BasicSpectrum]**](BasicSpectrum.md) | | [optional] diff --git a/client-api_python/generated/docs/P2Mode.md b/client-api_python/generated/docs/P2Mode.md new file mode 100644 index 00000000..fa02e31d --- /dev/null +++ b/client-api_python/generated/docs/P2Mode.md @@ -0,0 +1,14 @@ +# P2Mode + + +## Enum + +* `BT_RULE_BASED` (value: `'BT_RULE_BASED'`) + +* `P2_RULE_ONLY` (value: `'P2_RULE_ONLY'`) + +* `COMBINED_RULES` (value: `'COMBINED_RULES'`) + +[[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_python/generated/docs/PagedModelRun.md b/client-api_python/generated/docs/PagedModelRun.md new file mode 100644 index 00000000..ea6c0287 --- /dev/null +++ b/client-api_python/generated/docs/PagedModelRun.md @@ -0,0 +1,30 @@ +# PagedModelRun + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**content** | [**List[Run]**](Run.md) | | [optional] +**page** | [**PageMetadata**](PageMetadata.md) | | [optional] + +## Example + +```python +from PySirius.models.paged_model_run import PagedModelRun + +# TODO update the JSON string below +json = "{}" +# create an instance of PagedModelRun from a JSON string +paged_model_run_instance = PagedModelRun.from_json(json) +# print the JSON string representation of the object +print(PagedModelRun.to_json()) + +# convert the object into a dict +paged_model_run_dict = paged_model_run_instance.to_dict() +# create an instance of PagedModelRun from a dict +paged_model_run_from_dict = PagedModelRun.from_dict(paged_model_run_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_python/generated/docs/PeakAnnotation.md b/client-api_python/generated/docs/PeakAnnotation.md index 3356decd..d07656ca 100644 --- a/client-api_python/generated/docs/PeakAnnotation.md +++ b/client-api_python/generated/docs/PeakAnnotation.md @@ -13,10 +13,10 @@ Name | Type | Description | Notes **mass_deviation_ppm** | **float** | Relative mass deviation of the exact mass to the measured peak mass in ppm | [optional] **recalibrated_mass_deviation_mz** | **float** | Absolute mass deviation of the exact mass to the recalibrated peak mass in mDa | [optional] **recalibrated_mass_deviation_ppm** | **float** | Relative mass deviation of the exact mass to the recalibrated peak mass in ppm | [optional] -**parent_peak** | [**ParentPeak**](ParentPeak.md) | | [optional] -**substructure_atoms** | **List[Optional[int]]** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Array/List of indices of the atoms of the structure candidate that are part of this fragments substructure (highlighted atoms) | [optional] -**substructure_bonds** | **List[Optional[int]]** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Array/List of indices of the bonds of the structure candidate that are part of this fragments substructure (highlighted bonds) Null if substructure annotation not available or not requested. | [optional] -**substructure_bonds_cut** | **List[Optional[int]]** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Array/List of indices of the bonds of the structure candidate that need to be cut to produce this fragments substructure (highlighted cutted bonds). Null if substructure annotation not available or not requested. | [optional] +**parent_peak** | [**ParentPeak**](ParentPeak.md) | Link to the parent peak connected via the neutral loss from the fragmentation tree. | [optional] +**substructure_atoms** | **List[int]** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Array/List of indices of the atoms of the structure candidate that are part of this fragments substructure (highlighted atoms) | [optional] +**substructure_bonds** | **List[int]** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Array/List of indices of the bonds of the structure candidate that are part of this fragments substructure (highlighted bonds) Null if substructure annotation not available or not requested. | [optional] +**substructure_bonds_cut** | **List[int]** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Array/List of indices of the bonds of the structure candidate that need to be cut to produce this fragments substructure (highlighted cutted bonds). Null if substructure annotation not available or not requested. | [optional] **substructure_score** | **float** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. This score roughly reflects the probability of this fragment forming. This is the score of the path from root to this node which has the maximal score or \"profit\". The score of a path is equal to the sum of scores of its contained fragments and edges. Note: Refers to 'totalScore' in CombinatorialNode Null if substructure annotation not available or not requested. | [optional] **hydrogen_rearrangements** | **int** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Number of hydrogens rearrangements needed to match the substructure to the fragment formula. Null if substructure annotation not available or not requested. | [optional] diff --git a/client-api_python/generated/docs/GuiInfo.md b/client-api_python/generated/docs/PeakPair.md similarity index 52% rename from client-api_python/generated/docs/GuiInfo.md rename to client-api_python/generated/docs/PeakPair.md index de6176ef..a51ef9b5 100644 --- a/client-api_python/generated/docs/GuiInfo.md +++ b/client-api_python/generated/docs/PeakPair.md @@ -1,28 +1,29 @@ -# GuiInfo +# PeakPair ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**project_id** | **str** | The project this instance is running on | [optional] +**query_peak** | **int** | | +**reference_peak** | **int** | | ## Example ```python -from PySirius.models.gui_info import GuiInfo +from PySirius.models.peak_pair import PeakPair # TODO update the JSON string below json = "{}" -# create an instance of GuiInfo from a JSON string -gui_info_instance = GuiInfo.from_json(json) +# create an instance of PeakPair from a JSON string +peak_pair_instance = PeakPair.from_json(json) # print the JSON string representation of the object -print(GuiInfo.to_json()) +print(PeakPair.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) +peak_pair_dict = peak_pair_instance.to_dict() +# create an instance of PeakPair from a dict +peak_pair_from_dict = PeakPair.from_dict(peak_pair_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_python/generated/docs/ProjectInfo.md b/client-api_python/generated/docs/ProjectInfo.md index 84137ddf..15d4ddff 100644 --- a/client-api_python/generated/docs/ProjectInfo.md +++ b/client-api_python/generated/docs/ProjectInfo.md @@ -8,7 +8,7 @@ Name | Type | Description | Notes **project_id** | **str** | a user selected unique name of the project for easy access. | [optional] **location** | **str** | storage location of the project. | [optional] **description** | **str** | Description of this project. | [optional] -**type** | [**ProjectType**](ProjectType.md) | | [optional] +**type** | [**ProjectType**](ProjectType.md) | Type of this project. NULL if project type has not yet been specified by importing data. | [optional] **compatible** | **bool** | Indicates whether computed results (e.g. fingerprints, compounds classes) are compatible with the backend. If true project is up-to-date and there are no restrictions regarding usage. If false project is incompatible and therefore \"read only\" until the incompatible results have been removed. See updateProject endpoint for further information If NULL the information has not been requested. | [optional] **num_of_features** | **int** | Number of features (aligned over runs) in this project. If NULL, information has not been requested (See OptField 'sizeInformation'). | [optional] **num_of_compounds** | **int** | 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. | [optional] diff --git a/client-api_python/generated/docs/ProjectType.md b/client-api_python/generated/docs/ProjectType.md index 7b2a5d69..3b1d74aa 100644 --- a/client-api_python/generated/docs/ProjectType.md +++ b/client-api_python/generated/docs/ProjectType.md @@ -3,6 +3,8 @@ ## Enum +* `UNIMPORTED` (value: `'UNIMPORTED'`) + * `DIRECT_IMPORT` (value: `'DIRECT_IMPORT'`) * `PEAKLISTS` (value: `'PEAKLISTS'`) diff --git a/client-api_python/generated/docs/ProjectsApi.md b/client-api_python/generated/docs/ProjectsApi.md index bcbbfe81..d5751f7c 100644 --- a/client-api_python/generated/docs/ProjectsApi.md +++ b/client-api_python/generated/docs/ProjectsApi.md @@ -4,7 +4,7 @@ All URIs are relative to *http://localhost:8080* Method | HTTP request | Description ------------- | ------------- | ------------- -[**close_project**](ProjectsApi.md#close_project) | **DELETE** /api/projects/{projectId} | Close project-space and remove it from application +[**close_project**](ProjectsApi.md#close_project) | **DELETE** /api/projects/{projectId} | Close project-space and remove it from the application [**create_project**](ProjectsApi.md#create_project) | **POST** /api/projects/{projectId} | Create and open a new project-space at given location and make it accessible via the given projectId. [**get_canopus_classy_fire_data**](ProjectsApi.md#get_canopus_classy_fire_data) | **GET** /api/projects/{projectId}/cf-data | Get CANOPUS prediction vector definition for ClassyFire classes [**get_canopus_npc_data**](ProjectsApi.md#get_canopus_npc_data) | **GET** /api/projects/{projectId}/npc-data | Get CANOPUS prediction vector definition for NPC classes @@ -19,11 +19,11 @@ Method | HTTP request | Description # **close_project** -> close_project(project_id) +> close_project(project_id, compact=compact) -Close project-space and remove it from application +Close project-space and remove it from the application -Close project-space and remove it from application. Project will NOT be deleted from disk.
ATTENTION: This will cancel and remove all jobs running on this Project before closing it. If there are many jobs, this might take some time. +Close project-space and remove it from the application. The Project will NOT be deleted from disk.
ATTENTION: This will cancel and remove all jobs running on this Project before closing it. If there are many jobs, this might take some time. ### Example @@ -45,10 +45,11 @@ with PySirius.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = PySirius.ProjectsApi(api_client) project_id = 'project_id_example' # str | unique name/identifier of the project-space to be closed. + compact = False # bool | if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version. (optional) (default to False) try: - # Close project-space and remove it from application - api_instance.close_project(project_id) + # Close project-space and remove it from the application + api_instance.close_project(project_id, compact=compact) except Exception as e: print("Exception when calling ProjectsApi->close_project: %s\n" % e) ``` @@ -61,6 +62,7 @@ with PySirius.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **str**| unique name/identifier of the project-space to be closed. | + **compact** | **bool**| if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version. | [optional] [default to False] ### Return type @@ -113,7 +115,7 @@ with PySirius.ApiClient(configuration) as api_client: api_instance = PySirius.ProjectsApi(api_client) project_id = 'project_id_example' # str | unique name/identifier that shall be used to access the newly created project-space. Must consist only of [a-zA-Z0-9_-]. path_to_project = 'path_to_project_example' # str | 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. (optional) - opt_fields = ["none"] # List[ProjectInfoOptField] | (optional) (default to ["none"]) + opt_fields = [none] # List[ProjectInfoOptField] | (optional) (default to [none]) try: # Create and open a new project-space at given location and make it accessible via the given projectId. @@ -133,7 +135,7 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **str**| unique name/identifier that shall be used to access the newly created project-space. Must consist only of [a-zA-Z0-9_-]. | **path_to_project** | **str**| 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. | [optional] - **opt_fields** | [**List[ProjectInfoOptField]**](ProjectInfoOptField.md)| | [optional] [default to ["none"]] + **opt_fields** | [**List[ProjectInfoOptField]**](ProjectInfoOptField.md)| | [optional] [default to [none]] ### Return type @@ -493,7 +495,7 @@ No authorization required [[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) # **import_ms_run_data** -> ImportResult import_ms_run_data(project_id, input_files=input_files, parameters=parameters) +> ImportResult import_ms_run_data(project_id, input_files, parameters) Import and Align full MS-Runs from various formats into the specified project Possible formats (mzML, mzXML) @@ -521,12 +523,12 @@ with PySirius.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = PySirius.ProjectsApi(api_client) project_id = 'project_id_example' # str | Project-space to import into. - input_files = None # List[bytearray] | (optional) - parameters = PySirius.LcmsSubmissionParameters() # LcmsSubmissionParameters | (optional) + input_files = None # List[bytearray] | Files to import into project. + parameters = PySirius.LcmsSubmissionParameters() # LcmsSubmissionParameters | Parameters for feature alignment and feature finding. try: # Import and Align full MS-Runs from various formats into the specified project Possible formats (mzML, mzXML) - api_response = api_instance.import_ms_run_data(project_id, input_files=input_files, parameters=parameters) + api_response = api_instance.import_ms_run_data(project_id, input_files, parameters) print("The response of ProjectsApi->import_ms_run_data:\n") pprint(api_response) except Exception as e: @@ -541,8 +543,8 @@ with PySirius.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **str**| Project-space to import into. | - **input_files** | **List[bytearray]**| | [optional] - **parameters** | [**LcmsSubmissionParameters**](LcmsSubmissionParameters.md)| | [optional] + **input_files** | **List[bytearray]**| Files to import into project. | + **parameters** | [**LcmsSubmissionParameters**](LcmsSubmissionParameters.md)| Parameters for feature alignment and feature finding. | ### Return type @@ -566,7 +568,7 @@ No authorization required [[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) # **import_ms_run_data_as_job** -> Job import_ms_run_data_as_job(project_id, opt_fields=opt_fields, input_files=input_files, parameters=parameters) +> Job import_ms_run_data_as_job(project_id, input_files, parameters, opt_fields=opt_fields) Import and Align full MS-Runs from various formats into the specified project as background job. @@ -595,13 +597,13 @@ with PySirius.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = PySirius.ProjectsApi(api_client) project_id = 'project_id_example' # str | Project-space to import into. - opt_fields = ["progress"] # List[JobOptField] | Set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to ["progress"]) - input_files = None # List[bytearray] | (optional) - parameters = PySirius.LcmsSubmissionParameters() # LcmsSubmissionParameters | (optional) + input_files = None # List[bytearray] | Files to import into project. + parameters = PySirius.LcmsSubmissionParameters() # LcmsSubmissionParameters | Parameters for feature alignment and feature finding. + opt_fields = [progress] # List[JobOptField] | Set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to [progress]) try: # Import and Align full MS-Runs from various formats into the specified project as background job. - api_response = api_instance.import_ms_run_data_as_job(project_id, opt_fields=opt_fields, input_files=input_files, parameters=parameters) + api_response = api_instance.import_ms_run_data_as_job(project_id, input_files, parameters, opt_fields=opt_fields) print("The response of ProjectsApi->import_ms_run_data_as_job:\n") pprint(api_response) except Exception as e: @@ -616,9 +618,9 @@ with PySirius.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **str**| Project-space to import into. | - **opt_fields** | [**List[JobOptField]**](JobOptField.md)| Set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["progress"]] - **input_files** | **List[bytearray]**| | [optional] - **parameters** | [**LcmsSubmissionParameters**](LcmsSubmissionParameters.md)| | [optional] + **input_files** | **List[bytearray]**| Files to import into project. | + **parameters** | [**LcmsSubmissionParameters**](LcmsSubmissionParameters.md)| Parameters for feature alignment and feature finding. | + **opt_fields** | [**List[JobOptField]**](JobOptField.md)| Set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [progress]] ### Return type @@ -642,7 +644,7 @@ No authorization required [[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) # **import_preprocessed_data** -> ImportResult import_preprocessed_data(project_id, ignore_formulas=ignore_formulas, allow_ms1_only=allow_ms1_only, input_files=input_files) +> ImportResult import_preprocessed_data(project_id, input_files, ignore_formulas=ignore_formulas, allow_ms1_only=allow_ms1_only) Import already preprocessed ms/ms data from various formats into the specified project Possible formats (ms, mgf, cef, msp) @@ -669,13 +671,13 @@ with PySirius.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = PySirius.ProjectsApi(api_client) project_id = 'project_id_example' # str | project-space to import into. + input_files = None # List[bytearray] | files to import into project ignore_formulas = False # bool | (optional) (default to False) allow_ms1_only = True # bool | (optional) (default to True) - input_files = None # List[bytearray] | (optional) try: # Import already preprocessed ms/ms data from various formats into the specified project Possible formats (ms, mgf, cef, msp) - api_response = api_instance.import_preprocessed_data(project_id, ignore_formulas=ignore_formulas, allow_ms1_only=allow_ms1_only, input_files=input_files) + api_response = api_instance.import_preprocessed_data(project_id, input_files, ignore_formulas=ignore_formulas, allow_ms1_only=allow_ms1_only) print("The response of ProjectsApi->import_preprocessed_data:\n") pprint(api_response) except Exception as e: @@ -690,9 +692,9 @@ with PySirius.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **str**| project-space to import into. | + **input_files** | **List[bytearray]**| files to import into project | **ignore_formulas** | **bool**| | [optional] [default to False] **allow_ms1_only** | **bool**| | [optional] [default to True] - **input_files** | **List[bytearray]**| | [optional] ### Return type @@ -716,7 +718,7 @@ No authorization required [[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) # **import_preprocessed_data_as_job** -> Job import_preprocessed_data_as_job(project_id, ignore_formulas=ignore_formulas, allow_ms1_only=allow_ms1_only, opt_fields=opt_fields, input_files=input_files) +> Job import_preprocessed_data_as_job(project_id, input_files, ignore_formulas=ignore_formulas, allow_ms1_only=allow_ms1_only, opt_fields=opt_fields) Import ms/ms data from the given format into the specified project-space as background job. @@ -744,14 +746,14 @@ with PySirius.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = PySirius.ProjectsApi(api_client) project_id = 'project_id_example' # str | project-space to import into. + input_files = None # List[bytearray] | ignore_formulas = False # bool | (optional) (default to False) allow_ms1_only = True # bool | (optional) (default to True) - opt_fields = ["progress"] # List[JobOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to ["progress"]) - input_files = None # List[bytearray] | (optional) + opt_fields = [progress] # List[JobOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to [progress]) try: # Import ms/ms data from the given format into the specified project-space as background job. - api_response = api_instance.import_preprocessed_data_as_job(project_id, ignore_formulas=ignore_formulas, allow_ms1_only=allow_ms1_only, opt_fields=opt_fields, input_files=input_files) + api_response = api_instance.import_preprocessed_data_as_job(project_id, input_files, ignore_formulas=ignore_formulas, allow_ms1_only=allow_ms1_only, opt_fields=opt_fields) print("The response of ProjectsApi->import_preprocessed_data_as_job:\n") pprint(api_response) except Exception as e: @@ -766,10 +768,10 @@ with PySirius.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **str**| project-space to import into. | + **input_files** | **List[bytearray]**| | **ignore_formulas** | **bool**| | [optional] [default to False] **allow_ms1_only** | **bool**| | [optional] [default to True] - **opt_fields** | [**List[JobOptField]**](JobOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["progress"]] - **input_files** | **List[bytearray]**| | [optional] + **opt_fields** | [**List[JobOptField]**](JobOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [progress]] ### Return type @@ -822,7 +824,7 @@ with PySirius.ApiClient(configuration) as api_client: api_instance = PySirius.ProjectsApi(api_client) project_id = 'project_id_example' # str | unique name/identifier that shall be used to access the opened project-space. Must consist only of [a-zA-Z0-9_-]. path_to_project = 'path_to_project_example' # str | 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. (optional) - opt_fields = ["none"] # List[ProjectInfoOptField] | (optional) (default to ["none"]) + opt_fields = [none] # List[ProjectInfoOptField] | (optional) (default to [none]) try: # Open an existing project-space and make it accessible via the given projectId. @@ -842,7 +844,7 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **str**| unique name/identifier that shall be used to access the opened project-space. Must consist only of [a-zA-Z0-9_-]. | **path_to_project** | **str**| 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. | [optional] - **opt_fields** | [**List[ProjectInfoOptField]**](ProjectInfoOptField.md)| | [optional] [default to ["none"]] + **opt_fields** | [**List[ProjectInfoOptField]**](ProjectInfoOptField.md)| | [optional] [default to [none]] ### Return type diff --git a/client-api_python/generated/docs/QuantMeasure.md b/client-api_python/generated/docs/QuantMeasure.md new file mode 100644 index 00000000..d12338e9 --- /dev/null +++ b/client-api_python/generated/docs/QuantMeasure.md @@ -0,0 +1,12 @@ +# QuantMeasure + + +## Enum + +* `APEX_INTENSITY` (value: `'APEX_INTENSITY'`) + +* `AREA_UNDER_CURVE` (value: `'AREA_UNDER_CURVE'`) + +[[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_python/generated/docs/QuantificationRowType.md b/client-api_python/generated/docs/QuantRowType.md similarity index 79% rename from client-api_python/generated/docs/QuantificationRowType.md rename to client-api_python/generated/docs/QuantRowType.md index 9f8c7115..97a3ab9e 100644 --- a/client-api_python/generated/docs/QuantificationRowType.md +++ b/client-api_python/generated/docs/QuantRowType.md @@ -1,10 +1,12 @@ -# QuantificationRowType +# QuantRowType ## Enum * `FEATURES` (value: `'FEATURES'`) +* `COMPOUNDS` (value: `'COMPOUNDS'`) + [[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_python/generated/docs/QuantTableExperimental.md b/client-api_python/generated/docs/QuantTableExperimental.md new file mode 100644 index 00000000..04ef8cc5 --- /dev/null +++ b/client-api_python/generated/docs/QuantTableExperimental.md @@ -0,0 +1,36 @@ +# QuantTableExperimental + +EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**quantification_measure** | [**QuantMeasure**](QuantMeasure.md) | | [optional] +**row_type** | [**QuantRowType**](QuantRowType.md) | | [optional] +**row_ids** | **List[int]** | | [optional] +**column_ids** | **List[int]** | | [optional] +**row_names** | **List[str]** | | [optional] +**column_names** | **List[str]** | | [optional] +**values** | **List[List[float]]** | | [optional] + +## Example + +```python +from PySirius.models.quant_table_experimental import QuantTableExperimental + +# TODO update the JSON string below +json = "{}" +# create an instance of QuantTableExperimental from a JSON string +quant_table_experimental_instance = QuantTableExperimental.from_json(json) +# print the JSON string representation of the object +print(QuantTableExperimental.to_json()) + +# convert the object into a dict +quant_table_experimental_dict = quant_table_experimental_instance.to_dict() +# create an instance of QuantTableExperimental from a dict +quant_table_experimental_from_dict = QuantTableExperimental.from_dict(quant_table_experimental_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_python/generated/docs/QuantificationTableExperimental.md b/client-api_python/generated/docs/QuantificationTableExperimental.md deleted file mode 100644 index d87c3e7e..00000000 --- a/client-api_python/generated/docs/QuantificationTableExperimental.md +++ /dev/null @@ -1,37 +0,0 @@ -# QuantificationTableExperimental - -EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable. - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**quantification_type** | [**QuantificationMeasure**](QuantificationMeasure.md) | | [optional] -**row_type** | [**QuantificationRowType**](QuantificationRowType.md) | | [optional] -**column_type** | [**QuantificationColumnType**](QuantificationColumnType.md) | | [optional] -**row_ids** | **List[Optional[int]]** | | [optional] -**column_ids** | **List[Optional[int]]** | | [optional] -**row_names** | **List[Optional[str]]** | | [optional] -**column_names** | **List[Optional[str]]** | | [optional] -**values** | **List[List[float]]** | | [optional] - -## Example - -```python -from PySirius.models.quantification_table_experimental import QuantificationTableExperimental - -# TODO update the JSON string below -json = "{}" -# create an instance of QuantificationTableExperimental from a JSON string -quantification_table_experimental_instance = QuantificationTableExperimental.from_json(json) -# print the JSON string representation of the object -print(QuantificationTableExperimental.to_json()) - -# convert the object into a dict -quantification_table_experimental_dict = quantification_table_experimental_instance.to_dict() -# create an instance of QuantificationTableExperimental from a dict -quantification_table_experimental_from_dict = QuantificationTableExperimental.from_dict(quantification_table_experimental_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_python/generated/docs/Run.md b/client-api_python/generated/docs/Run.md new file mode 100644 index 00000000..a8110928 --- /dev/null +++ b/client-api_python/generated/docs/Run.md @@ -0,0 +1,36 @@ +# Run + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**run_id** | **str** | Identifier | [optional] +**name** | **str** | Informative, human-readable name of this run | [optional] +**source** | **str** | Source location | [optional] +**chromatography** | **str** | | [optional] +**ionization** | **str** | | [optional] +**fragmentation** | **str** | | [optional] +**mass_analyzers** | **List[str]** | | [optional] +**tags** | [**Dict[str, Tag]**](Tag.md) | Key: tagName, value: tag | [optional] + +## Example + +```python +from PySirius.models.run import Run + +# TODO update the JSON string below +json = "{}" +# create an instance of Run from a JSON string +run_instance = Run.from_json(json) +# print the JSON string representation of the object +print(Run.to_json()) + +# convert the object into a dict +run_dict = run_instance.to_dict() +# create an instance of Run from a dict +run_from_dict = Run.from_dict(run_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_python/generated/docs/RunOptField.md b/client-api_python/generated/docs/RunOptField.md new file mode 100644 index 00000000..8c26389a --- /dev/null +++ b/client-api_python/generated/docs/RunOptField.md @@ -0,0 +1,12 @@ +# RunOptField + + +## Enum + +* `NONE` (value: `'none'`) + +* `TAGS` (value: `'tags'`) + +[[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_python/generated/docs/RunsApi.md b/client-api_python/generated/docs/RunsApi.md new file mode 100644 index 00000000..5812f44f --- /dev/null +++ b/client-api_python/generated/docs/RunsApi.md @@ -0,0 +1,609 @@ +# PySirius.RunsApi + +All URIs are relative to *http://localhost:8080* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**add_tags_to_run_experimental**](RunsApi.md#add_tags_to_run_experimental) | **PUT** /api/projects/{projectId}/runs/tags/{runId} | [EXPERIMENTAL] Add tags to a run in the project +[**compute_fold_change_for_blank_subtraction**](RunsApi.md#compute_fold_change_for_blank_subtraction) | **PUT** /api/projects/{projectId}/runs/blanksubtract/compute | **EXPERIMENTAL** Compute the fold changes that are required for the fold change filter +[**get_run_experimental**](RunsApi.md#get_run_experimental) | **GET** /api/projects/{projectId}/runs/{runId} | [EXPERIMENTAL] Get run with the given identifier from the specified project-space +[**get_run_page_experimental**](RunsApi.md#get_run_page_experimental) | **GET** /api/projects/{projectId}/runs/page | [EXPERIMENTAL] Get all available runs in the given project-space +[**get_runs_by_group_experimental**](RunsApi.md#get_runs_by_group_experimental) | **GET** /api/projects/{projectId}/runs/grouped | [EXPERIMENTAL] Get runs by tag group +[**get_runs_by_tag_experimental**](RunsApi.md#get_runs_by_tag_experimental) | **GET** /api/projects/{projectId}/runs/tagged | [EXPERIMENTAL] Get runs by tag +[**get_tags_for_run_experimental**](RunsApi.md#get_tags_for_run_experimental) | **GET** /api/projects/{projectId}/runs/tags/{objectId} | [EXPERIMENTAL] Get all tags associated with this Run +[**remove_tag_from_run_experimental**](RunsApi.md#remove_tag_from_run_experimental) | **DELETE** /api/projects/{projectId}/runs/tags/{runId}/{tagName} | [EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space + + +# **add_tags_to_run_experimental** +> List[Tag] add_tags_to_run_experimental(project_id, run_id, tag) + +[EXPERIMENTAL] Add tags to a run in the project + +[EXPERIMENTAL] Add tags to a run in the project. Tags with the same name will be overwritten.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.tag import Tag +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.RunsApi(api_client) + project_id = 'project_id_example' # str | project-space to add to. + run_id = 'run_id_example' # str | run to add tags to. + tag = [PySirius.Tag()] # List[Tag] | tags to add. + + try: + # [EXPERIMENTAL] Add tags to a run in the project + api_response = api_instance.add_tags_to_run_experimental(project_id, run_id, tag) + print("The response of RunsApi->add_tags_to_run_experimental:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling RunsApi->add_tags_to_run_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to add to. | + **run_id** | **str**| run to add tags to. | + **tag** | [**List[Tag]**](Tag.md)| tags to add. | + +### Return type + +[**List[Tag]**](Tag.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | the tags that have been added | - | + +[[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) + +# **compute_fold_change_for_blank_subtraction** +> Job compute_fold_change_for_blank_subtraction(project_id, sample_type_fold_change_request, opt_fields=opt_fields) + +**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter + +**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter.
This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.
+ +### Example + + +```python +import PySirius +from PySirius.models.job import Job +from PySirius.models.job_opt_field import JobOptField +from PySirius.models.sample_type_fold_change_request import SampleTypeFoldChangeRequest +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.RunsApi(api_client) + project_id = 'project_id_example' # str | project-space to compute the fold change in. + sample_type_fold_change_request = PySirius.SampleTypeFoldChangeRequest() # SampleTypeFoldChangeRequest | request with lists of run IDs that are sample, blank, and control runs + opt_fields = ["progress"] # List[JobOptField] | job opt fields. (optional) (default to ["progress"]) + + try: + # **EXPERIMENTAL** Compute the fold changes that are required for the fold change filter + api_response = api_instance.compute_fold_change_for_blank_subtraction(project_id, sample_type_fold_change_request, opt_fields=opt_fields) + print("The response of RunsApi->compute_fold_change_for_blank_subtraction:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling RunsApi->compute_fold_change_for_blank_subtraction: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to compute the fold change in. | + **sample_type_fold_change_request** | [**SampleTypeFoldChangeRequest**](SampleTypeFoldChangeRequest.md)| request with lists of run IDs that are sample, blank, and control runs | + **opt_fields** | [**List[JobOptField]**](JobOptField.md)| job opt fields. | [optional] [default to ["progress"]] + +### Return type + +[**Job**](Job.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **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_run_experimental** +> Run get_run_experimental(project_id, run_id, opt_fields=opt_fields) + +[EXPERIMENTAL] Get run with the given identifier from the specified project-space + +[EXPERIMENTAL] Get run with the given identifier from the specified project-space.[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.run import Run +from PySirius.models.run_opt_field import RunOptField +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.RunsApi(api_client) + project_id = 'project_id_example' # str | project-space to read from. + run_id = 'run_id_example' # str | identifier of run to access. + opt_fields = [] # List[RunOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to []) + + try: + # [EXPERIMENTAL] Get run with the given identifier from the specified project-space + api_response = api_instance.get_run_experimental(project_id, run_id, opt_fields=opt_fields) + print("The response of RunsApi->get_run_experimental:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling RunsApi->get_run_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to read from. | + **run_id** | **str**| identifier of run to access. | + **opt_fields** | [**List[RunOptField]**](RunOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to []] + +### Return type + +[**Run**](Run.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Run with tags (if specified). | - | + +[[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_run_page_experimental** +> PagedModelRun get_run_page_experimental(project_id, page=page, size=size, sort=sort, opt_fields=opt_fields) + +[EXPERIMENTAL] Get all available runs in the given project-space + +[EXPERIMENTAL] Get all available runs in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.paged_model_run import PagedModelRun +from PySirius.models.run_opt_field import RunOptField +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.RunsApi(api_client) + project_id = 'project_id_example' # str | project-space to read from. + page = 0 # int | Zero-based page index (0..N) (optional) (default to 0) + size = 20 # int | The size of the page to be returned (optional) (default to 20) + sort = ['sort_example'] # List[str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) + opt_fields = [] # List[RunOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to []) + + try: + # [EXPERIMENTAL] Get all available runs in the given project-space + api_response = api_instance.get_run_page_experimental(project_id, page=page, size=size, sort=sort, opt_fields=opt_fields) + print("The response of RunsApi->get_run_page_experimental:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling RunsApi->get_run_page_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to read from. | + **page** | **int**| Zero-based page index (0..N) | [optional] [default to 0] + **size** | **int**| The size of the page to be returned | [optional] [default to 20] + **sort** | [**List[str]**](str.md)| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] + **opt_fields** | [**List[RunOptField]**](RunOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to []] + +### Return type + +[**PagedModelRun**](PagedModelRun.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Runs with tags (if specified). | - | + +[[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_runs_by_group_experimental** +> PagedModelRun get_runs_by_group_experimental(project_id, group_name, page=page, size=size, sort=sort, opt_fields=opt_fields) + +[EXPERIMENTAL] Get runs by tag group + +[EXPERIMENTAL] Get runs by tag group.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.paged_model_run import PagedModelRun +from PySirius.models.run_opt_field import RunOptField +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.RunsApi(api_client) + project_id = 'project_id_example' # str | project-space to delete from. + group_name = 'group_name_example' # str | tag group name. + page = 0 # int | Zero-based page index (0..N) (optional) (default to 0) + size = 20 # int | The size of the page to be returned (optional) (default to 20) + sort = ['sort_example'] # List[str] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (optional) + opt_fields = ["none"] # List[RunOptField] | set of optional fields to be included. Use 'none' only to override defaults. (optional) (default to ["none"]) + + try: + # [EXPERIMENTAL] Get runs by tag group + api_response = api_instance.get_runs_by_group_experimental(project_id, group_name, page=page, size=size, sort=sort, opt_fields=opt_fields) + print("The response of RunsApi->get_runs_by_group_experimental:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling RunsApi->get_runs_by_group_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to delete from. | + **group_name** | **str**| tag group name. | + **page** | **int**| Zero-based page index (0..N) | [optional] [default to 0] + **size** | **int**| The size of the page to be returned | [optional] [default to 20] + **sort** | [**List[str]**](str.md)| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] + **opt_fields** | [**List[RunOptField]**](RunOptField.md)| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + +### Return type + +[**PagedModelRun**](PagedModelRun.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | tagged runs | - | + +[[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_runs_by_tag_experimental** +> PagedModelRun get_runs_by_tag_experimental(project_id, filter=filter, page=page, size=size, sort=sort, opt_fields=opt_fields) + +[EXPERIMENTAL] Get runs by tag + +[EXPERIMENTAL] Get runs by tag.
The filter string must contain one or more clauses. A clause is prefÃxed by a field name.
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). Tag name based field need to be prefixed with the namespace tags.. Possible value types of tags are bool, integer, real, text, date, or time - tag value The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.
A clause may be:
tags.MyTagA:sampletags.MyTagA:"Some Text"tags.MyTagA:/[mb]oat/tags.MyTagB<3[ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3] Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )
The syntax allows to build complex filter queries such as:
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
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### 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.RunsApi(api_client) + project_id = 'project_id_example' # str | project-space to delete from. + run_id = 'run_id_example' # str | run to delete tag from. + tag_name = 'tag_name_example' # str | name of the tag to delete. + + try: + # [EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space + api_instance.remove_tag_from_run_experimental(project_id, run_id, tag_name) + except Exception as e: + print("Exception when calling RunsApi->remove_tag_from_run_experimental: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to delete from. | + **run_id** | **str**| run to delete tag from. | + **tag_name** | **str**| name of the tag to delete. | + +### 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 | +|-------------|-------------|------------------| +**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) + diff --git a/client-api_python/generated/docs/SampleTypeFoldChangeRequest.md b/client-api_python/generated/docs/SampleTypeFoldChangeRequest.md new file mode 100644 index 00000000..f7481ffc --- /dev/null +++ b/client-api_python/generated/docs/SampleTypeFoldChangeRequest.md @@ -0,0 +1,31 @@ +# SampleTypeFoldChangeRequest + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**sample_run_ids** | **List[str]** | | [optional] +**blank_run_ids** | **List[str]** | | [optional] +**control_run_ids** | **List[str]** | | [optional] + +## Example + +```python +from PySirius.models.sample_type_fold_change_request import SampleTypeFoldChangeRequest + +# TODO update the JSON string below +json = "{}" +# create an instance of SampleTypeFoldChangeRequest from a JSON string +sample_type_fold_change_request_instance = SampleTypeFoldChangeRequest.from_json(json) +# print the JSON string representation of the object +print(SampleTypeFoldChangeRequest.to_json()) + +# convert the object into a dict +sample_type_fold_change_request_dict = sample_type_fold_change_request_instance.to_dict() +# create an instance of SampleTypeFoldChangeRequest from a dict +sample_type_fold_change_request_from_dict = SampleTypeFoldChangeRequest.from_dict(sample_type_fold_change_request_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_python/generated/docs/SearchableDatabasesApi.md b/client-api_python/generated/docs/SearchableDatabasesApi.md index 421931ac..8cd0511a 100644 --- a/client-api_python/generated/docs/SearchableDatabasesApi.md +++ b/client-api_python/generated/docs/SearchableDatabasesApi.md @@ -416,7 +416,7 @@ No authorization required [[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) # **import_into_database** -> SearchableDatabase import_into_database(database_id, buffer_size=buffer_size, input_files=input_files) +> SearchableDatabase import_into_database(database_id, input_files, buffer_size=buffer_size, bio_transformer_parameters=bio_transformer_parameters) Start import of structure and spectra files into the specified database. @@ -427,6 +427,7 @@ Start import of structure and spectra files into the specified database. ```python import PySirius +from PySirius.models.bio_transformer_parameters import BioTransformerParameters from PySirius.models.searchable_database import SearchableDatabase from PySirius.rest import ApiException from pprint import pprint @@ -443,12 +444,13 @@ with PySirius.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = PySirius.SearchableDatabasesApi(api_client) database_id = 'database_id_example' # str | database to import into + input_files = None # List[bytearray] | files to be imported buffer_size = 1000 # int | (optional) (default to 1000) - input_files = None # List[bytearray] | (optional) + bio_transformer_parameters = PySirius.BioTransformerParameters() # BioTransformerParameters | configuration for biotransformer execution. If null, BioTransformer is not applied. (optional) try: # Start import of structure and spectra files into the specified database. - api_response = api_instance.import_into_database(database_id, buffer_size=buffer_size, input_files=input_files) + api_response = api_instance.import_into_database(database_id, input_files, buffer_size=buffer_size, bio_transformer_parameters=bio_transformer_parameters) print("The response of SearchableDatabasesApi->import_into_database:\n") pprint(api_response) except Exception as e: @@ -463,8 +465,9 @@ with PySirius.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **database_id** | **str**| database to import into | + **input_files** | **List[bytearray]**| files to be imported | **buffer_size** | **int**| | [optional] [default to 1000] - **input_files** | **List[bytearray]**| | [optional] + **bio_transformer_parameters** | [**BioTransformerParameters**](BioTransformerParameters.md)| configuration for biotransformer execution. If null, BioTransformer is not applied. | [optional] ### Return type @@ -483,7 +486,7 @@ No authorization required | Status code | Description | Response headers | |-------------|-------------|------------------| -**200** | Job of the import command to be executed. | - | +**200** | Meta-Information of the affected database after the import has been performed. | - | [[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/SecurityContext.md b/client-api_python/generated/docs/SecurityContext.md new file mode 100644 index 00000000..e377f8b6 --- /dev/null +++ b/client-api_python/generated/docs/SecurityContext.md @@ -0,0 +1,29 @@ +# SecurityContext + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**principal** | [**SecurityContextPrincipal**](SecurityContextPrincipal.md) | | [optional] + +## Example + +```python +from PySirius.models.security_context import SecurityContext + +# TODO update the JSON string below +json = "{}" +# create an instance of SecurityContext from a JSON string +security_context_instance = SecurityContext.from_json(json) +# print the JSON string representation of the object +print(SecurityContext.to_json()) + +# convert the object into a dict +security_context_dict = security_context_instance.to_dict() +# create an instance of SecurityContext from a dict +security_context_from_dict = SecurityContext.from_dict(security_context_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_python/generated/docs/SecurityContextPrincipal.md b/client-api_python/generated/docs/SecurityContextPrincipal.md new file mode 100644 index 00000000..986e1d22 --- /dev/null +++ b/client-api_python/generated/docs/SecurityContextPrincipal.md @@ -0,0 +1,29 @@ +# SecurityContextPrincipal + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**name** | **str** | | [optional] + +## Example + +```python +from PySirius.models.security_context_principal import SecurityContextPrincipal + +# TODO update the JSON string below +json = "{}" +# create an instance of SecurityContextPrincipal from a JSON string +security_context_principal_instance = SecurityContextPrincipal.from_json(json) +# print the JSON string representation of the object +print(SecurityContextPrincipal.to_json()) + +# convert the object into a dict +security_context_principal_dict = security_context_principal_instance.to_dict() +# create an instance of SecurityContextPrincipal from a dict +security_context_principal_from_dict = SecurityContextPrincipal.from_dict(security_context_principal_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_python/generated/docs/Sirius.md b/client-api_python/generated/docs/Sirius.md index 3a0c49ba..514948ee 100644 --- a/client-api_python/generated/docs/Sirius.md +++ b/client-api_python/generated/docs/Sirius.md @@ -7,22 +7,22 @@ User/developer friendly parameter subset for the Formula/SIRIUS tool Can use re Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **enabled** | **bool** | tags whether the tool is enabled | [optional] -**profile** | [**InstrumentProfile**](InstrumentProfile.md) | | [optional] +**profile** | [**InstrumentProfile**](InstrumentProfile.md) | Instrument specific profile for internal algorithms Just select what comes closest to the instrument that was used for measuring the data. | [optional] **number_of_candidates** | **int** | Number of formula candidates to keep as result list (Formula Candidates). | [optional] **number_of_candidates_per_ionization** | **int** | Use this parameter if you want to force SIRIUS to report at least NumberOfCandidatesPerIonization results per ionization. if <= 0, this parameter will have no effect and just the top NumberOfCandidates results will be reported. | [optional] **mass_accuracy_ms2ppm** | **float** | Maximum allowed mass deviation. Only molecular formulas within this mass window are considered. | [optional] -**isotope_ms2_settings** | [**IsotopeMs2Strategy**](IsotopeMs2Strategy.md) | | [optional] +**isotope_ms2_settings** | [**IsotopeMs2Strategy**](IsotopeMs2Strategy.md) | Specify how isotope patterns in MS/MS should be handled. <p> FILTER: 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. <p> SCORE: Use them for SCORING. To use this the instrument should produce clear MS/MS isotope patterns <p> IGNORE: Ignore that there might be isotope patterns in MS/MS | [optional] **filter_by_isotope_pattern** | **bool** | 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. | [optional] **enforce_el_gordo_formula** | **bool** | 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. | [optional] **perform_bottom_up_search** | **bool** | If true, molecular formula generation via bottom up search is enabled. | [optional] **perform_denovo_below_mz** | **float** | Specifies the m/z below which de novo molecular formula generation is enabled. Set to 0 to disable de novo molecular formula generation. | [optional] -**formula_search_dbs** | **List[Optional[str]]** | List Structure database to extract molecular formulas from to reduce formula search space. SIRIUS is quite good at de novo formula annotation, so only enable if you have a good reason. | [optional] +**formula_search_dbs** | **List[str]** | List Structure database to extract molecular formulas from to reduce formula search space. SIRIUS is quite good at de novo formula annotation, so only enable if you have a good reason. | [optional] **apply_formula_constraints_to_db_and_bottom_up_search** | **bool** | By default, the formula (element) constraints are only applied to de novo molecular formula generation. If true, the constraints are as well applied to database search and bottom up search. | [optional] **enforced_formula_constraints** | **str** | These configurations hold the information how to autodetect elements based on the given formula constraints. Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored. <p> Enforced: Enforced elements are always considered | [optional] **fallback_formula_constraints** | **str** | These configurations hold the information how to autodetect elements based on the given formula constraints. Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored. <p> Fallback: Fallback elements are used, if the auto-detection fails (e.g. no isotope pattern available) | [optional] -**detectable_elements** | **List[Optional[str]]** | These configurations hold the information how to autodetect elements based on the given formula constraints. Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored. <p> Detectable: Detectable elements are added to the chemical alphabet, if there are indications for them (e.g. in isotope pattern) | [optional] -**ilp_timeout** | [**Timeout**](Timeout.md) | | [optional] -**use_heuristic** | [**UseHeuristic**](UseHeuristic.md) | | [optional] +**detectable_elements** | **List[str]** | These configurations hold the information how to autodetect elements based on the given formula constraints. Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored. <p> Detectable: Detectable elements are added to the chemical alphabet, if there are indications for them (e.g. in isotope pattern) | [optional] +**ilp_timeout** | [**Timeout**](Timeout.md) | Timout settings for the ILP solver used for fragmentation tree computation secondsPerInstance: Set the maximum number of seconds for computing a single compound. Set to 0 to disable the time constraint. secondsPerTree: Set the maximum number of seconds for a single molecular formula check. Set to 0 to disable the time constraint | [optional] +**use_heuristic** | [**UseHeuristic**](UseHeuristic.md) | Mass thresholds for heuristic fragmentation tree computation which dramatically speeds up computations. useHeuristicAboveMz: For compounds above this threshold fragmentation trees will be computed heuristically for ranking. Tree that will be kept (numberOfCandidates) will be recomputed exactly useOnlyHeuristicAboveMz:For compounds above this threshold fragmentation trees will be computed heuristically. | [optional] **inject_spec_lib_match_formulas** | **bool** | If true formula candidates that belong to spectral library matches above a certain threshold will we inject/preserved for further analyses no matter which score they have or which filter is applied | [optional] **min_score_to_inject_spec_lib_match** | **float** | Similarity Threshold to inject formula candidates no matter which score/rank they have or which filter settings are applied. If threshold >= 0 formulas candidates with reference spectrum similarity above the threshold will be injected. | [optional] **min_peaks_to_inject_spec_lib_match** | **int** | Matching peaks threshold to inject formula candidates no matter which score they have or which filter is applied. | [optional] diff --git a/client-api_python/generated/docs/SpectralLibraryMatch.md b/client-api_python/generated/docs/SpectralLibraryMatch.md index aff6bd24..27d73ba6 100644 --- a/client-api_python/generated/docs/SpectralLibraryMatch.md +++ b/client-api_python/generated/docs/SpectralLibraryMatch.md @@ -7,8 +7,9 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **spec_match_id** | **str** | | [optional] **rank** | **int** | | [optional] -**similarity** | **float** | | -**shared_peaks** | **int** | | [optional] +**similarity** | **float** | Similarity between query and reference spectrum | +**shared_peaks** | **int** | Number of shared/matched peaks | [optional] +**shared_peak_mapping** | [**List[PeakPair]**](PeakPair.md) | List of paired/matched peak indices. Maps indices of peaks from the query spectrum (mass sorted) to indices of matched peaks in the reference spectrum (mass sorted) | [optional] **query_spectrum_index** | **int** | | **db_name** | **str** | | [optional] **db_id** | **str** | | [optional] @@ -16,10 +17,13 @@ Name | Type | Description | Notes **splash** | **str** | | [optional] **molecular_formula** | **str** | | [optional] **adduct** | **str** | | [optional] -**exact_mass** | **str** | | [optional] +**exact_mass** | **float** | | [optional] **smiles** | **str** | | [optional] +**type** | [**SpectralMatchType**](SpectralMatchType.md) | | [optional] **inchi_key** | **str** | | +**reference_spectrum_type** | [**SpectrumType**](SpectrumType.md) | | [optional] **reference_spectrum** | [**BasicSpectrum**](BasicSpectrum.md) | | [optional] +**query_spectrum_type** | [**SpectrumType**](SpectrumType.md) | | [optional] ## Example diff --git a/client-api_python/generated/docs/SpectralLibrarySearch.md b/client-api_python/generated/docs/SpectralLibrarySearch.md index 1bb52697..498bf621 100644 --- a/client-api_python/generated/docs/SpectralLibrarySearch.md +++ b/client-api_python/generated/docs/SpectralLibrarySearch.md @@ -7,10 +7,15 @@ User/developer friendly parameter subset for the Spectral library search tool. Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **enabled** | **bool** | tags whether the tool is enabled | [optional] -**spectra_search_dbs** | **List[Optional[str]]** | Structure Databases with Reference spectra to search in. <p> Defaults to BIO + Custom Databases. Possible values are available to Database API. | [optional] -**peak_deviation_ppm** | **float** | Maximum allowed mass deviation in ppm for matching peaks. | [optional] +**spectra_search_dbs** | **List[str]** | Structure Databases with Reference spectra to search in. <p> Defaults to BIO + Custom Databases. Possible values are available to Database API. | [optional] **precursor_deviation_ppm** | **float** | Maximum allowed mass deviation in ppm for matching the precursor. If not specified, the same value as for the peaks is used. | [optional] -**scoring** | [**SpectralMatchingType**](SpectralMatchingType.md) | | [optional] +**min_similarity** | **float** | Minimal spectral similarity of a spectral match to be considered a hit. | [optional] +**min_num_of_peaks** | **int** | Minimal number of matching peaks of a spectral match to be considered a hit. | [optional] +**enable_analogue_search** | **bool** | Enable analogue search in addition to the identity spectral library search | [optional] +**min_similarity_analogue** | **float** | Minimal spectral similarity of a spectral match to be considered an analogue hit. | [optional] +**min_num_of_peaks_analogue** | **int** | Minimal number of matching peaks of a spectral match to be considered an analogue hit. | [optional] +**scoring** | [**SpectralMatchingType**](SpectralMatchingType.md) | NO LONGER SUPPORTED (IGNORED) Specify scoring method to match spectra INTENSITY: Intensity weighted. Each peak matches at most one peak in the other spectrum. GAUSSIAN: Treat peaks as (un-normalized) Gaussians and score overlapping areas of PDFs. Each peak might score against multiple peaks in the other spectrum. 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. | [optional] +**peak_deviation_ppm** | **float** | NO LONGER SUPPORTED (IGNORED) Maximum allowed mass deviation in ppm for matching peaks. | [optional] ## Example diff --git a/client-api_python/generated/docs/SpectralMatchType.md b/client-api_python/generated/docs/SpectralMatchType.md new file mode 100644 index 00000000..ef528a52 --- /dev/null +++ b/client-api_python/generated/docs/SpectralMatchType.md @@ -0,0 +1,12 @@ +# SpectralMatchType + + +## Enum + +* `IDENTITY` (value: `'IDENTITY'`) + +* `ANALOG` (value: `'ANALOG'`) + +[[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_python/generated/docs/SpectralMatchingType.md b/client-api_python/generated/docs/SpectralMatchingType.md index 717fb5e3..8b26b90f 100644 --- a/client-api_python/generated/docs/SpectralMatchingType.md +++ b/client-api_python/generated/docs/SpectralMatchingType.md @@ -9,6 +9,8 @@ * `MODIFIED_COSINE` (value: `'MODIFIED_COSINE'`) +* `FAST_COSINE` (value: `'FAST_COSINE'`) + [[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_python/generated/docs/SpectrumAnnotation.md b/client-api_python/generated/docs/SpectrumAnnotation.md index 24073e29..65643ae1 100644 --- a/client-api_python/generated/docs/SpectrumAnnotation.md +++ b/client-api_python/generated/docs/SpectrumAnnotation.md @@ -10,8 +10,10 @@ Name | Type | Description | Notes **exact_mass** | **float** | Exact mass based on the annotated molecular formula and ionization | [optional] **mass_deviation_mz** | **float** | Absolute mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in mDa | [optional] **mass_deviation_ppm** | **float** | Relative mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in ppm | [optional] -**structure_annotation_smiles** | **str** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation Substructure highlighting (bond and atom indices) refer to this specific SMILES. If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might not match correctly anymore. Null if substructure annotation not available or not requested. | [optional] -**structure_annotation_score** | **float** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles) Null if substructure annotation not available or not requested. | [optional] +**structure_annotation_smiles** | **str** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. <p> Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation Substructure highlighting (bond and atom indices) refer to this specific SMILES. If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might not match correctly anymore. <p> Null if substructure annotation not available or not requested. | [optional] +**structure_annotation_name** | **str** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. <p> Name of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation. <p> Null if substructure annotation not available or not requested. | [optional] +**structure_annotation_svg** | **str** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. <p> SVG graphics of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation Substructure highlighting (bond and atom indices) refers to this SVG. <p> Null if substructure annotation not available or not requested. | [optional] +**structure_annotation_score** | **float** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. <p> Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles) <p> Null if substructure annotation not available or not requested. | [optional] ## Example diff --git a/client-api_python/generated/docs/SpectrumType.md b/client-api_python/generated/docs/SpectrumType.md new file mode 100644 index 00000000..cd21e901 --- /dev/null +++ b/client-api_python/generated/docs/SpectrumType.md @@ -0,0 +1,12 @@ +# SpectrumType + + +## Enum + +* `SPECTRUM` (value: `'SPECTRUM'`) + +* `MERGED_SPECTRUM` (value: `'MERGED_SPECTRUM'`) + +[[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_python/generated/docs/StatisticsTable.md b/client-api_python/generated/docs/StatisticsTable.md new file mode 100644 index 00000000..9d6fbcf2 --- /dev/null +++ b/client-api_python/generated/docs/StatisticsTable.md @@ -0,0 +1,37 @@ +# StatisticsTable + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**statistics_type** | [**StatisticsType**](StatisticsType.md) | | [optional] +**aggregation_type** | [**AggregationType**](AggregationType.md) | | [optional] +**quantification_measure** | [**QuantMeasure**](QuantMeasure.md) | | [optional] +**row_type** | [**QuantRowType**](QuantRowType.md) | | [optional] +**row_ids** | **List[str]** | | [optional] +**column_names** | **List[str]** | | [optional] +**column_left_groups** | **List[str]** | | [optional] +**column_right_groups** | **List[str]** | | [optional] +**values** | **List[List[float]]** | | [optional] + +## Example + +```python +from PySirius.models.statistics_table import StatisticsTable + +# TODO update the JSON string below +json = "{}" +# create an instance of StatisticsTable from a JSON string +statistics_table_instance = StatisticsTable.from_json(json) +# print the JSON string representation of the object +print(StatisticsTable.to_json()) + +# convert the object into a dict +statistics_table_dict = statistics_table_instance.to_dict() +# create an instance of StatisticsTable from a dict +statistics_table_from_dict = StatisticsTable.from_dict(statistics_table_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_python/generated/docs/QuantificationMeasure.md b/client-api_python/generated/docs/StatisticsType.md similarity index 73% rename from client-api_python/generated/docs/QuantificationMeasure.md rename to client-api_python/generated/docs/StatisticsType.md index 541b3676..58246e2d 100644 --- a/client-api_python/generated/docs/QuantificationMeasure.md +++ b/client-api_python/generated/docs/StatisticsType.md @@ -1,9 +1,9 @@ -# QuantificationMeasure +# StatisticsType ## Enum -* `APEX_HEIGHT` (value: `'APEX_HEIGHT'`) +* `FOLD_CHANGE` (value: `'FOLD_CHANGE'`) [[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_python/generated/docs/StoredJobSubmission.md b/client-api_python/generated/docs/StoredJobSubmission.md index 0906796f..71e99e50 100644 --- a/client-api_python/generated/docs/StoredJobSubmission.md +++ b/client-api_python/generated/docs/StoredJobSubmission.md @@ -7,7 +7,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **name** | **str** | Unique name to identify this JobSubmission (job config). | **editable** | **bool** | False for predefined configs which are not editable and not removable. | -**job_submission** | [**JobSubmission**](JobSubmission.md) | | +**job_submission** | [**JobSubmission**](JobSubmission.md) | The JobSubmission identified by the name | ## Example diff --git a/client-api_python/generated/docs/StructureCandidate.md b/client-api_python/generated/docs/StructureCandidate.md index 26143f95..7a826798 100644 --- a/client-api_python/generated/docs/StructureCandidate.md +++ b/client-api_python/generated/docs/StructureCandidate.md @@ -8,9 +8,10 @@ Name | Type | Description | Notes **inchi_key** | **str** | | [optional] **smiles** | **str** | | [optional] **structure_name** | **str** | | [optional] -**xlog_p** | **float** | | [optional] +**structure_svg** | **str** | SVG graphics of the structure candidate OPTIONAL: needs to be added by parameter | [optional] **db_links** | [**List[DBLink]**](DBLink.md) | List of structure database links belonging to this structure candidate OPTIONAL: needs to be added by parameter | [optional] **spectral_library_matches** | [**List[SpectralLibraryMatch]**](SpectralLibraryMatch.md) | List of spectral library matches belonging to this structure candidate OPTIONAL: needs to be added by parameter | [optional] +**xlog_p** | **float** | | [optional] ## Example diff --git a/client-api_python/generated/docs/StructureCandidateFormula.md b/client-api_python/generated/docs/StructureCandidateFormula.md index 3f307dd7..ac88321a 100644 --- a/client-api_python/generated/docs/StructureCandidateFormula.md +++ b/client-api_python/generated/docs/StructureCandidateFormula.md @@ -8,14 +8,15 @@ Name | Type | Description | Notes **inchi_key** | **str** | | [optional] **smiles** | **str** | | [optional] **structure_name** | **str** | | [optional] -**xlog_p** | **float** | | [optional] +**structure_svg** | **str** | SVG graphics of the structure candidate OPTIONAL: needs to be added by parameter | [optional] **db_links** | [**List[DBLink]**](DBLink.md) | List of structure database links belonging to this structure candidate OPTIONAL: needs to be added by parameter | [optional] **spectral_library_matches** | [**List[SpectralLibraryMatch]**](SpectralLibraryMatch.md) | List of spectral library matches belonging to this structure candidate OPTIONAL: needs to be added by parameter | [optional] +**xlog_p** | **float** | | [optional] **rank** | **int** | the overall rank of this candidate among all candidates of this feature | [optional] **csi_score** | **float** | CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID This is the score used for ranking structure candidates | [optional] **tanimoto_similarity** | **float** | Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID | [optional] **mces_dist_to_top_hit** | **float** | Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list. | [optional] -**fingerprint** | [**BinaryFingerprint**](BinaryFingerprint.md) | | [optional] +**fingerprint** | [**BinaryFingerprint**](BinaryFingerprint.md) | Array containing the indices of the molecular fingerprint that are available in the structure (1 if present) OPTIONAL: needs to be added by parameter | [optional] **molecular_formula** | **str** | Molecular formula of this candidate | [optional] **adduct** | **str** | Adduct of this candidate | [optional] **formula_id** | **str** | Id of the corresponding Formula candidate | [optional] diff --git a/client-api_python/generated/docs/StructureCandidateOptField.md b/client-api_python/generated/docs/StructureCandidateOptField.md index b069a535..cd1a876a 100644 --- a/client-api_python/generated/docs/StructureCandidateOptField.md +++ b/client-api_python/generated/docs/StructureCandidateOptField.md @@ -11,6 +11,8 @@ * `LIBRARYMATCHES` (value: `'libraryMatches'`) +* `STRUCTURESVG` (value: `'structureSvg'`) + [[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_python/generated/docs/StructureCandidateScored.md b/client-api_python/generated/docs/StructureCandidateScored.md index 3857f03a..58d4ae1d 100644 --- a/client-api_python/generated/docs/StructureCandidateScored.md +++ b/client-api_python/generated/docs/StructureCandidateScored.md @@ -8,14 +8,15 @@ Name | Type | Description | Notes **inchi_key** | **str** | | [optional] **smiles** | **str** | | [optional] **structure_name** | **str** | | [optional] -**xlog_p** | **float** | | [optional] +**structure_svg** | **str** | SVG graphics of the structure candidate OPTIONAL: needs to be added by parameter | [optional] **db_links** | [**List[DBLink]**](DBLink.md) | List of structure database links belonging to this structure candidate OPTIONAL: needs to be added by parameter | [optional] **spectral_library_matches** | [**List[SpectralLibraryMatch]**](SpectralLibraryMatch.md) | List of spectral library matches belonging to this structure candidate OPTIONAL: needs to be added by parameter | [optional] +**xlog_p** | **float** | | [optional] **rank** | **int** | the overall rank of this candidate among all candidates of this feature | [optional] **csi_score** | **float** | CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID This is the score used for ranking structure candidates | [optional] **tanimoto_similarity** | **float** | Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID | [optional] **mces_dist_to_top_hit** | **float** | Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list. | [optional] -**fingerprint** | [**BinaryFingerprint**](BinaryFingerprint.md) | | [optional] +**fingerprint** | [**BinaryFingerprint**](BinaryFingerprint.md) | Array containing the indices of the molecular fingerprint that are available in the structure (1 if present) OPTIONAL: needs to be added by parameter | [optional] ## Example diff --git a/client-api_python/generated/docs/StructureDbSearch.md b/client-api_python/generated/docs/StructureDbSearch.md index 0730dcea..cdfa3502 100644 --- a/client-api_python/generated/docs/StructureDbSearch.md +++ b/client-api_python/generated/docs/StructureDbSearch.md @@ -7,9 +7,9 @@ User/developer friendly parameter subset for the CSI:FingerID structure db searc Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **enabled** | **bool** | tags whether the tool is enabled | [optional] -**structure_search_dbs** | **List[Optional[str]]** | Structure databases to search in, If expansive search is enabled this DB selection will be expanded to PubChem if not high confidence hit was found in the selected databases. <p> Defaults to BIO + Custom Databases. Possible values are available to Database API. | [optional] +**structure_search_dbs** | **List[str]** | Structure databases to search in, If expansive search is enabled this DB selection will be expanded to PubChem if not high confidence hit was found in the selected databases. <p> Defaults to BIO + Custom Databases. Possible values are available to Database API. | [optional] **tag_structures_with_lipid_class** | **bool** | Candidates matching the lipid class estimated by El Gordo will be tagged. The lipid class will only be available if El Gordo predicts that the MS/MS is a lipid spectrum. If this parameter is set to 'false' El Gordo will still be executed and e.g. improve the fragmentation tree, but the matching structure candidates will not be tagged if they match lipid class. | [optional] -**expansive_search_confidence_mode** | [**ConfidenceMode**](ConfidenceMode.md) | | [optional] +**expansive_search_confidence_mode** | [**ConfidenceMode**](ConfidenceMode.md) | Expansive search mode. Expansive search will expand the search space to whole PubChem in case no hit with reasonable confidence was found in one of the specified databases (structureSearchDBs). <p> Possible Values OFF - No expansive search is performed EXACT - Use confidence score in exact mode: Only molecular structures identical to the true structure should count as correct identification. APPROXIMATE - Use confidence score in approximate mode: Molecular structures hits that are close to the true structure should count as correct identification. | [optional] ## Example diff --git a/client-api_python/generated/docs/Subscription.md b/client-api_python/generated/docs/Subscription.md index 86f13995..415a7ad1 100644 --- a/client-api_python/generated/docs/Subscription.md +++ b/client-api_python/generated/docs/Subscription.md @@ -20,6 +20,7 @@ Name | Type | Description | Notes **name** | **str** | | [optional] **tos** | **str** | | [optional] **pp** | **str** | | [optional] +**allowed_features** | [**AllowedFeatures**](AllowedFeatures.md) | | [optional] ## Example diff --git a/client-api_python/generated/docs/Tag.md b/client-api_python/generated/docs/Tag.md new file mode 100644 index 00000000..08946d3b --- /dev/null +++ b/client-api_python/generated/docs/Tag.md @@ -0,0 +1,30 @@ +# Tag + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**tag_name** | **str** | Name of the tag as defined by the corresponding TagDefinition Links tag object to their definition. | +**value** | **object** | | [optional] + +## Example + +```python +from PySirius.models.tag import Tag + +# TODO update the JSON string below +json = "{}" +# create an instance of Tag from a JSON string +tag_instance = Tag.from_json(json) +# print the JSON string representation of the object +print(Tag.to_json()) + +# convert the object into a dict +tag_dict = tag_instance.to_dict() +# create an instance of Tag from a dict +tag_from_dict = Tag.from_dict(tag_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_python/generated/docs/TagDefinition.md b/client-api_python/generated/docs/TagDefinition.md new file mode 100644 index 00000000..a5b592ee --- /dev/null +++ b/client-api_python/generated/docs/TagDefinition.md @@ -0,0 +1,36 @@ +# TagDefinition + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**tag_name** | **str** | Name of this tag defined by this definition (key) | +**description** | **str** | A human-readable description about the purpose of this tag. | [optional] +**tag_type** | **str** | A simple string based identifier to specify the type/scope/purpose of this tag. | [optional] +**value_type** | [**ValueType**](ValueType.md) | | +**possible_values** | **List[object]** | | [optional] +**min_value** | **object** | | [optional] +**max_value** | **object** | | [optional] +**editable** | **bool** | | [optional] + +## Example + +```python +from PySirius.models.tag_definition import TagDefinition + +# TODO update the JSON string below +json = "{}" +# create an instance of TagDefinition from a JSON string +tag_definition_instance = TagDefinition.from_json(json) +# print the JSON string representation of the object +print(TagDefinition.to_json()) + +# convert the object into a dict +tag_definition_dict = tag_definition_instance.to_dict() +# create an instance of TagDefinition from a dict +tag_definition_from_dict = TagDefinition.from_dict(tag_definition_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_python/generated/docs/TagDefinitionImport.md b/client-api_python/generated/docs/TagDefinitionImport.md new file mode 100644 index 00000000..7ba47332 --- /dev/null +++ b/client-api_python/generated/docs/TagDefinitionImport.md @@ -0,0 +1,35 @@ +# TagDefinitionImport + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**tag_name** | **str** | Name of this tag defined by this definition (key) | +**description** | **str** | A human-readable description about the purpose of this tag. | [optional] +**tag_type** | **str** | A simple string based identifier to specify the type/scope/purpose of this tag. | [optional] +**value_type** | [**ValueType**](ValueType.md) | | +**possible_values** | **List[object]** | | [optional] +**min_value** | **object** | | [optional] +**max_value** | **object** | | [optional] + +## Example + +```python +from PySirius.models.tag_definition_import import TagDefinitionImport + +# TODO update the JSON string below +json = "{}" +# create an instance of TagDefinitionImport from a JSON string +tag_definition_import_instance = TagDefinitionImport.from_json(json) +# print the JSON string representation of the object +print(TagDefinitionImport.to_json()) + +# convert the object into a dict +tag_definition_import_dict = tag_definition_import_instance.to_dict() +# create an instance of TagDefinitionImport from a dict +tag_definition_import_from_dict = TagDefinitionImport.from_dict(tag_definition_import_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_python/generated/docs/TagGroup.md b/client-api_python/generated/docs/TagGroup.md new file mode 100644 index 00000000..0cd70b7a --- /dev/null +++ b/client-api_python/generated/docs/TagGroup.md @@ -0,0 +1,31 @@ +# TagGroup + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**group_name** | **str** | Name of this Grouping query. | [optional] +**lucene_query** | **str** | Query used to group the entities in lucene format. | [optional] +**group_type** | **str** | | [optional] + +## Example + +```python +from PySirius.models.tag_group import TagGroup + +# TODO update the JSON string below +json = "{}" +# create an instance of TagGroup from a JSON string +tag_group_instance = TagGroup.from_json(json) +# print the JSON string representation of the object +print(TagGroup.to_json()) + +# convert the object into a dict +tag_group_dict = tag_group_instance.to_dict() +# create an instance of TagGroup from a dict +tag_group_from_dict = TagGroup.from_dict(tag_group_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_python/generated/docs/TagsApi.md b/client-api_python/generated/docs/TagsApi.md new file mode 100644 index 00000000..f294ec96 --- /dev/null +++ b/client-api_python/generated/docs/TagsApi.md @@ -0,0 +1,648 @@ +# PySirius.TagsApi + +All URIs are relative to *http://localhost:8080* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**add_group**](TagsApi.md#add_group) | **POST** /api/projects/{projectId}/groups/{groupName} | [EXPERIMENTAL] Group tags in the project +[**add_possible_values_to_tag_definition**](TagsApi.md#add_possible_values_to_tag_definition) | **PATCH** /api/projects/{projectId}/tags/{tagName} | [EXPERIMENTAL] Add a possible value to the tag definition in the project +[**create_tags**](TagsApi.md#create_tags) | **PUT** /api/projects/{projectId}/tags | [EXPERIMENTAL] Add tags to the project +[**delete_group**](TagsApi.md#delete_group) | **DELETE** /api/projects/{projectId}/groups/{groupName} | [EXPERIMENTAL] Delete tag groups with the given name from the specified project-space +[**delete_tag**](TagsApi.md#delete_tag) | **DELETE** /api/projects/{projectId}/tags/{tagName} | [EXPERIMENTAL] Delete tag definition with the given name from the specified project-space +[**get_group_by_name**](TagsApi.md#get_group_by_name) | **GET** /api/projects/{projectId}/groups/{groupName} | [EXPERIMENTAL] Get tag group by name in the given project-space +[**get_groups**](TagsApi.md#get_groups) | **GET** /api/projects/{projectId}/groups | [EXPERIMENTAL] Get all tag based groups in the given project-space +[**get_tag**](TagsApi.md#get_tag) | **GET** /api/projects/{projectId}/tags/{tagName} | [EXPERIMENTAL] Get tag definition by its name in the given project-space +[**get_tags**](TagsApi.md#get_tags) | **GET** /api/projects/{projectId}/tags | [EXPERIMENTAL] Get all tag definitions in the given project-space + + +# **add_group** +> TagGroup add_group(project_id, group_name, filter, type) + +[EXPERIMENTAL] Group tags in the project + +[EXPERIMENTAL] Group tags in the project. The group name must not exist in the project.
See /tagged for filter syntax.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.tag_definition import TagDefinition +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.TagsApi(api_client) + project_id = 'project_id_example' # str | project-space to add to. + tag_name = 'tag_name_example' # str | the tag definition to add the values to + request_body = None # List[object] | + + try: + # [EXPERIMENTAL] Add a possible value to the tag definition in the project + api_response = api_instance.add_possible_values_to_tag_definition(project_id, tag_name, request_body) + print("The response of TagsApi->add_possible_values_to_tag_definition:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling TagsApi->add_possible_values_to_tag_definition: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to add to. | + **tag_name** | **str**| the tag definition to add the values to | + **request_body** | [**List[object]**](object.md)| | + +### Return type + +[**TagDefinition**](TagDefinition.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | the definitions of the tags that have been added | - | + +[[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) + +# **create_tags** +> List[TagDefinition] create_tags(project_id, tag_definition_import) + +[EXPERIMENTAL] Add tags to the project + +[EXPERIMENTAL] Add tags to the project. Tag names must not exist in the project.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.tag_definition import TagDefinition +from PySirius.models.tag_definition_import import TagDefinitionImport +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.TagsApi(api_client) + project_id = 'project_id_example' # str | project-space to add to. + tag_definition_import = [PySirius.TagDefinitionImport()] # List[TagDefinitionImport] | the tag definitions to be created + + try: + # [EXPERIMENTAL] Add tags to the project + api_response = api_instance.create_tags(project_id, tag_definition_import) + print("The response of TagsApi->create_tags:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling TagsApi->create_tags: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to add to. | + **tag_definition_import** | [**List[TagDefinitionImport]**](TagDefinitionImport.md)| the tag definitions to be created | + +### Return type + +[**List[TagDefinition]**](TagDefinition.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | the definitions of the tags that have been 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) + +# **delete_group** +> delete_group(project_id, group_name) + +[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space + +[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### 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.TagsApi(api_client) + project_id = 'project_id_example' # str | project-space to delete from. + group_name = 'group_name_example' # str | name of group to delete. + + try: + # [EXPERIMENTAL] Delete tag groups with the given name from the specified project-space + api_instance.delete_group(project_id, group_name) + except Exception as e: + print("Exception when calling TagsApi->delete_group: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to delete from. | + **group_name** | **str**| name of group to delete. | + +### 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 | +|-------------|-------------|------------------| +**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) + +# **delete_tag** +> delete_tag(project_id, tag_name) + +[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space + +[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space.
This will also remove all tags belonging to this definition from every tagged entity.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### 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.TagsApi(api_client) + project_id = 'project_id_example' # str | project-space to delete from. + tag_name = 'tag_name_example' # str | name of the tag definition to delete. + + try: + # [EXPERIMENTAL] Delete tag definition with the given name from the specified project-space + api_instance.delete_tag(project_id, tag_name) + except Exception as e: + print("Exception when calling TagsApi->delete_tag: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to delete from. | + **tag_name** | **str**| name of the tag definition to delete. | + +### 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 | +|-------------|-------------|------------------| +**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_group_by_name** +> TagGroup get_group_by_name(project_id, group_name) + +[EXPERIMENTAL] Get tag group by name in the given project-space + +[EXPERIMENTAL] Get tag group by name in the given project-space.[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.tag_group import TagGroup +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.TagsApi(api_client) + project_id = 'project_id_example' # str | project-space to read from. + group_name = 'group_name_example' # str | name of the group + + try: + # [EXPERIMENTAL] Get tag group by name in the given project-space + api_response = api_instance.get_group_by_name(project_id, group_name) + print("The response of TagsApi->get_group_by_name:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling TagsApi->get_group_by_name: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to read from. | + **group_name** | **str**| name of the group | + +### Return type + +[**TagGroup**](TagGroup.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Tag group. | - | + +[[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_groups** +> List[TagGroup] get_groups(project_id, group_type=group_type) + +[EXPERIMENTAL] Get all tag based groups in the given project-space + +[EXPERIMENTAL] Get all tag based groups in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.tag_group import TagGroup +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.TagsApi(api_client) + project_id = 'project_id_example' # str | project-space to read from. + group_type = 'group_type_example' # str | type of the group (optional) + + try: + # [EXPERIMENTAL] Get all tag based groups in the given project-space + api_response = api_instance.get_groups(project_id, group_type=group_type) + print("The response of TagsApi->get_groups:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling TagsApi->get_groups: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to read from. | + **group_type** | **str**| type of the group | [optional] + +### Return type + +[**List[TagGroup]**](TagGroup.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Groups. | - | + +[[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_tag** +> TagDefinition get_tag(project_id, tag_name) + +[EXPERIMENTAL] Get tag definition by its name in the given project-space + +[EXPERIMENTAL] Get tag definition by its name in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.tag_definition import TagDefinition +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.TagsApi(api_client) + project_id = 'project_id_example' # str | project-space to read from. + tag_name = 'tag_name_example' # str | name of the tag + + try: + # [EXPERIMENTAL] Get tag definition by its name in the given project-space + api_response = api_instance.get_tag(project_id, tag_name) + print("The response of TagsApi->get_tag:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling TagsApi->get_tag: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to read from. | + **tag_name** | **str**| name of the tag | + +### Return type + +[**TagDefinition**](TagDefinition.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Tag definition. | - | + +[[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_tags** +> List[TagDefinition] get_tags(project_id, tag_type=tag_type) + +[EXPERIMENTAL] Get all tag definitions in the given project-space + +[EXPERIMENTAL] Get all tag definitions in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example + + +```python +import PySirius +from PySirius.models.tag_definition import TagDefinition +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.TagsApi(api_client) + project_id = 'project_id_example' # str | project-space to read from. + tag_type = 'tag_type_example' # str | scope of the tag (optional) (optional) + + try: + # [EXPERIMENTAL] Get all tag definitions in the given project-space + api_response = api_instance.get_tags(project_id, tag_type=tag_type) + print("The response of TagsApi->get_tags:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling TagsApi->get_tags: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| project-space to read from. | + **tag_type** | **str**| scope of the tag (optional) | [optional] + +### Return type + +[**List[TagDefinition]**](TagDefinition.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Tag definitions. | - | + +[[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/TraceExperimental.md b/client-api_python/generated/docs/TraceExperimental.md index 1cc6c10e..cf20876a 100644 --- a/client-api_python/generated/docs/TraceExperimental.md +++ b/client-api_python/generated/docs/TraceExperimental.md @@ -10,6 +10,7 @@ Name | Type | Description | Notes **sample_id** | **str** | | [optional] **sample_name** | **str** | | [optional] **label** | **str** | | [optional] +**color** | **str** | | [optional] **intensities** | **List[float]** | | [optional] **annotations** | [**List[TraceAnnotationExperimental]**](TraceAnnotationExperimental.md) | | [optional] **mz** | **float** | | [optional] diff --git a/client-api_python/generated/docs/ValueType.md b/client-api_python/generated/docs/ValueType.md new file mode 100644 index 00000000..15337e4a --- /dev/null +++ b/client-api_python/generated/docs/ValueType.md @@ -0,0 +1,22 @@ +# ValueType + + +## Enum + +* `NONE` (value: `'NONE'`) + +* `BOOLEAN` (value: `'BOOLEAN'`) + +* `INTEGER` (value: `'INTEGER'`) + +* `REAL` (value: `'REAL'`) + +* `TEXT` (value: `'TEXT'`) + +* `DATE` (value: `'DATE'`) + +* `TIME` (value: `'TIME'`) + +[[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_python/generated/docs/WebServerNamespace.md b/client-api_python/generated/docs/WebServerNamespace.md new file mode 100644 index 00000000..e7699298 --- /dev/null +++ b/client-api_python/generated/docs/WebServerNamespace.md @@ -0,0 +1,29 @@ +# WebServerNamespace + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**value** | **str** | | [optional] + +## Example + +```python +from PySirius.models.web_server_namespace import WebServerNamespace + +# TODO update the JSON string below +json = "{}" +# create an instance of WebServerNamespace from a JSON string +web_server_namespace_instance = WebServerNamespace.from_json(json) +# print the JSON string representation of the object +print(WebServerNamespace.to_json()) + +# convert the object into a dict +web_server_namespace_dict = web_server_namespace_instance.to_dict() +# create an instance of WebServerNamespace from a dict +web_server_namespace_from_dict = WebServerNamespace.from_dict(web_server_namespace_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_python/generated/docs/Zodiac.md b/client-api_python/generated/docs/Zodiac.md index 0413fb38..e9238ad7 100644 --- a/client-api_python/generated/docs/Zodiac.md +++ b/client-api_python/generated/docs/Zodiac.md @@ -10,8 +10,10 @@ Name | Type | Description | Notes **considered_candidates_at300_mz** | **int** | Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds below 300 m/z. | [optional] **considered_candidates_at800_mz** | **int** | Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds above 800 m/z. | [optional] **run_in_two_steps** | **bool** | As default ZODIAC runs a 2-step approach. First running 'good quality compounds' only, and afterwards including the remaining. | [optional] -**edge_filter_thresholds** | [**ZodiacEdgeFilterThresholds**](ZodiacEdgeFilterThresholds.md) | | [optional] -**gibbs_sampler_parameters** | [**ZodiacEpochs**](ZodiacEpochs.md) | | [optional] +**edge_filter_thresholds** | [**ZodiacEdgeFilterThresholds**](ZodiacEdgeFilterThresholds.md) | thresholdFilter = Defines the proportion of edges of the complete network which will be ignored. minLocalConnections = Minimum number of compounds to which at least one candidate per compound must be connected to. | [optional] +**gibbs_sampler_parameters** | [**ZodiacEpochs**](ZodiacEpochs.md) | iterations: \"Number of epochs to run the Gibbs sampling. When multiple Markov chains are computed, all chains' iterations sum up to this value.\" burnInPeriod: \"Number of epochs considered as 'burn-in period'. numberOfMarkovChains: Number of separate Gibbs sampling runs. | [optional] +**library_search_anchors** | [**ZodiacLibraryScoring**](ZodiacLibraryScoring.md) | Configure the use of identity spectral library search results as anchors in ZODIAC network | [optional] +**analogue_search_anchors** | [**ZodiacAnalogueNodes**](ZodiacAnalogueNodes.md) | Configure the use of analogue spectral library search results as anchors in ZODIAC network | [optional] ## Example diff --git a/client-api_python/generated/docs/ZodiacAnalogueNodes.md b/client-api_python/generated/docs/ZodiacAnalogueNodes.md new file mode 100644 index 00000000..c9e4fa0e --- /dev/null +++ b/client-api_python/generated/docs/ZodiacAnalogueNodes.md @@ -0,0 +1,31 @@ +# ZodiacAnalogueNodes + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**enabled** | **bool** | | [optional] +**min_similarity** | **float** | | [optional] +**min_shared_peaks** | **int** | | [optional] + +## Example + +```python +from PySirius.models.zodiac_analogue_nodes import ZodiacAnalogueNodes + +# TODO update the JSON string below +json = "{}" +# create an instance of ZodiacAnalogueNodes from a JSON string +zodiac_analogue_nodes_instance = ZodiacAnalogueNodes.from_json(json) +# print the JSON string representation of the object +print(ZodiacAnalogueNodes.to_json()) + +# convert the object into a dict +zodiac_analogue_nodes_dict = zodiac_analogue_nodes_instance.to_dict() +# create an instance of ZodiacAnalogueNodes from a dict +zodiac_analogue_nodes_from_dict = ZodiacAnalogueNodes.from_dict(zodiac_analogue_nodes_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_python/generated/docs/ZodiacLibraryScoring.md b/client-api_python/generated/docs/ZodiacLibraryScoring.md new file mode 100644 index 00000000..51fa36ff --- /dev/null +++ b/client-api_python/generated/docs/ZodiacLibraryScoring.md @@ -0,0 +1,30 @@ +# ZodiacLibraryScoring + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**enabled** | **bool** | | [optional] +**min_similarity** | **float** | | [optional] + +## Example + +```python +from PySirius.models.zodiac_library_scoring import ZodiacLibraryScoring + +# TODO update the JSON string below +json = "{}" +# create an instance of ZodiacLibraryScoring from a JSON string +zodiac_library_scoring_instance = ZodiacLibraryScoring.from_json(json) +# print the JSON string representation of the object +print(ZodiacLibraryScoring.to_json()) + +# convert the object into a dict +zodiac_library_scoring_dict = zodiac_library_scoring_instance.to_dict() +# create an instance of ZodiacLibraryScoring from a dict +zodiac_library_scoring_from_dict = ZodiacLibraryScoring.from_dict(zodiac_library_scoring_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_python/generated/test/test_compounds_api.py b/client-api_python/generated/test/test_compounds_api.py index 717a90dc..a4e7141f 100644 --- a/client-api_python/generated/test/test_compounds_api.py +++ b/client-api_python/generated/test/test_compounds_api.py @@ -11,7 +11,6 @@ import os import json -import shutil import unittest import PySirius @@ -74,6 +73,7 @@ def test_add_compounds(self) -> None: """ pass + def test_delete_compound(self) -> None: """Test case for delete_compound @@ -118,14 +118,5 @@ def test_get_compounds_paged(self) -> None: response = self.api.compounds().get_compounds_paged(self.project_id) self.assertIsInstance(response, PagedModelCompound) - def test_get_traces(self) -> None: - """Test case for get_traces - - """ - # TODO "No trace information available for project id = test_compounds_api and compound id = 599595888450877371" - # compound_id = self.api.compounds().get_compounds(self.project_id)[0].compound_id - # response = self.api.compounds().get_traces(self.project_id, compound_id) - # self.assertIsInstance(response, TraceSet) - if __name__ == '__main__': unittest.main() diff --git a/client-api_python/generated/test/test_features_api.py b/client-api_python/generated/test/test_features_api.py index b77a323f..19a3e4db 100644 --- a/client-api_python/generated/test/test_features_api.py +++ b/client-api_python/generated/test/test_features_api.py @@ -12,7 +12,7 @@ import unittest from PySirius import SiriusSDK, PagedModelAlignedFeature, PagedModelStructureCandidateScored, \ - PagedModelStructureCandidateFormula, PagedModelFormulaCandidate, QuantificationTableExperimental, \ + PagedModelStructureCandidateFormula, PagedModelFormulaCandidate, QuantTableExperimental, \ PagedModelSpectralLibraryMatch, TraceSetExperimental from PySirius.models.aligned_feature import AlignedFeature from PySirius.models.annotated_ms_ms_data import AnnotatedMsMsData @@ -117,6 +117,13 @@ def test_delete_aligned_feature(self) -> None: self.api.projects().close_project(project_id) os.remove(project_info.location) + def test_delete_aligned_features(self) -> None: + """Test case for delete_aligned_features + + Delete feature (aligned over runs) with the given identifier from the specified project-space. + """ + pass + def test_get_aligned_feature(self) -> None: """Test case for get_aligned_feature @@ -284,13 +291,6 @@ def test_get_ms_data(self) -> None: # response = self.api.features().get_ms_data(self.project_id, self.aligned_feature_id) # self.assertIsInstance(response, MsData) - def test_get_quantification(self) -> None: - """Test case for get_quantification - - """ - response = self.api.features().get_quantification_experimental(self.project_id, self.aligned_feature_id) - self.assertIsInstance(response, QuantificationTableExperimental) - def test_get_spectral_library_match(self) -> None: """Test case for get_spectral_library_match @@ -323,20 +323,6 @@ def test_get_spectral_library_matches_summary(self) -> None: response = self.api.features().get_spectral_library_matches_summary(self.project_id, self.aligned_feature_id) self.assertIsInstance(response, SpectralLibraryMatchSummary) - def test_get_structure_annotated_ms_data(self) -> None: - """Test case for get_structure_annotated_ms_data - - Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses for the given formula result identifier and structure candidate inChIKey. - """ - pass - - def test_get_structure_annotated_spectrum(self) -> None: - """Test case for get_structure_annotated_spectrum - - Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. - """ - pass - def test_get_structure_candidates(self) -> None: """Test case for get_structure_candidates @@ -374,13 +360,5 @@ def test_get_structure_candidates_paged(self) -> None: response = self.api.features().get_structure_candidates_paged(self.project_id, self.aligned_feature_id) self.assertIsInstance(response, PagedModelStructureCandidateFormula) - def test_get_traces1(self) -> None: - """Test case for get_traces1 - - """ - response = self.api.features().get_traces_experimental(self.project_id, self.aligned_feature_id) - self.assertIsInstance(response, TraceSetExperimental) - - if __name__ == '__main__': unittest.main() diff --git a/client-api_python/generated/test/test_jobs_api.py b/client-api_python/generated/test/test_jobs_api.py index 3298bcf2..7c38e9bf 100644 --- a/client-api_python/generated/test/test_jobs_api.py +++ b/client-api_python/generated/test/test_jobs_api.py @@ -96,6 +96,13 @@ def test_delete_jobs(self) -> None: self.assertIsInstance(response_after, list) self.assertEqual(len(response_after), 0) + def test_get_command(self) -> None: + """Test case for get_command + + Get a CLI command for the given job configuration. + """ + pass + def test_get_default_job_config(self) -> None: """Test case for get_default_job_config @@ -127,6 +134,13 @@ def test_get_job_config(self) -> None: self.assertIsInstance(response, StoredJobSubmission) + def test_get_job_config_names(self) -> None: + """Test case for get_job_config_names + + [DEPRECATED] Get all (non-default) job configuration names + """ + pass + def test_get_job_configs(self) -> None: """Test case for get_job_configs diff --git a/client-api_python/generated/test/test_projects_api.py b/client-api_python/generated/test/test_projects_api.py index 0848663f..74b0e7e4 100644 --- a/client-api_python/generated/test/test_projects_api.py +++ b/client-api_python/generated/test/test_projects_api.py @@ -50,6 +50,13 @@ def test_close_project(self) -> None: """ pass + def test_copy_project(self) -> None: + """Test case for copy_project + + DEPRECATED: this endpoint is based on local file paths and will likely be removed in future versions of this API. + """ + pass + def test_create_project(self) -> None: """Test case for create_project diff --git a/client-api_python/sirius_api.py b/client-api_python/sirius_api.py index 2d6496b4..7a9b7a46 100644 --- a/client-api_python/sirius_api.py +++ b/client-api_python/sirius_api.py @@ -8,25 +8,37 @@ class PySiriusAPI: def __init__(self, api_client): self.api_client = api_client - + def get_client(self): return self.api_client + def actuator(self): + """returns API endpoint of the ActuatorApi""" + return PySirius.ActuatorApi(self.api_client) + + def compound_statistics(self): + """returns API endpoint of the CompoundsStatisticsApi""" + return PySirius.CompoundStatisticsApi(self.api_client) + def compounds(self): """returns API endpoint of the CompoundsApi""" return PySirius.CompoundsApi(self.api_client) - def jobs(self): - """returns API endpoint of the JobsApi""" - return PySirius.JobsApi(self.api_client) + def feature_statistics(self): + """returns API endpoint of the FeaturesStatisticsApi""" + return PySirius.FeatureStatisticsApi(self.api_client) def features(self): """returns API endpoint of the FeaturesApi""" return PySirius.FeaturesApi(self.api_client) - def gui(self): - """returns API endpoint of the ExperimentalGUIApi""" - return PySirius.GuiApi(self.api_client) + def infos(self): + """returns API endpoint of the InfoApi""" + return PySirius.InfoApi(self.api_client) + + def jobs(self): + """returns API endpoint of the JobsApi""" + return PySirius.JobsApi(self.api_client) def account(self): """returns API endpoint of the LoginAndAccountApi""" @@ -36,14 +48,18 @@ def projects(self): """returns API endpoint of the ProjectsApi""" return PySirius.ProjectsApi(self.api_client) - def infos(self): - """returns API endpoint of the InfoApi""" - return PySirius.InfoApi(self.api_client) + def runs(self): + """returns API endpoint of the RunsApi""" + return PySirius.RunsApi(self.api_client) def databases(self): """returns API endpoint of the SearchableDatabasesApi""" return PySirius.SearchableDatabasesApi(self.api_client) + def tags(self): + """returns API endpoint of the TagsApi""" + return PySirius.TagsApi(self.api_client) + def models(self): """returns the Superclass of all models""" - return PySirius.models + return PySirius.models \ No newline at end of file diff --git a/client-api_r/generated/.openapi-generator/FILES b/client-api_r/generated/.openapi-generator/FILES index b846f935..0fe3244b 100644 --- a/client-api_r/generated/.openapi-generator/FILES +++ b/client-api_r/generated/.openapi-generator/FILES @@ -11,6 +11,7 @@ R/adduct_network_experimental.R R/adduct_node_experimental.R R/aligned_feature.R R/aligned_feature_quality_experimental.R +R/allowed_features.R R/annotated_ms_ms_data.R R/annotated_peak.R R/annotated_spectrum.R @@ -20,6 +21,8 @@ R/axes.R R/background_computations_state_event.R R/basic_spectrum.R R/binary_fingerprint.R +R/bio_transformer_parameters.R +R/bio_transformer_sequence_step.R R/canopus.R R/canopus_prediction.R R/category.R @@ -27,6 +30,7 @@ R/compound.R R/compound_class.R R/compound_classes.R R/compound_import.R +R/compound_statistics_api.R R/compounds_api.R R/computed_subtools.R R/connection_check.R @@ -38,13 +42,13 @@ R/db_link.R R/deviation.R R/feature_annotations.R R/feature_import.R +R/feature_statistics_api.R R/features_api.R R/fingerprint_prediction.R +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 @@ -65,26 +69,35 @@ R/paged_model_aligned_feature.R R/paged_model_compound.R R/paged_model_formula_candidate.R R/paged_model_job.R +R/paged_model_run.R R/paged_model_spectral_library_match.R R/paged_model_structure_candidate_formula.R R/paged_model_structure_candidate_scored.R R/parent_peak.R R/peak_annotation.R +R/peak_pair.R R/project_change_event.R R/project_info.R R/projects_api.R R/quality_item.R -R/quantification_table_experimental.R +R/quant_table_experimental.R R/rsirius_api.R +R/run.R +R/run_opt_field.R +R/runs_api.R +R/sample_type_fold_change_request.R R/searchable_database.R R/searchable_database_parameters.R R/searchable_databases_api.R +R/security_context.R +R/security_context_principal.R R/simple_peak.R R/sirius.R R/spectral_library_match.R R/spectral_library_match_summary.R R/spectral_library_search.R R/spectrum_annotation.R +R/statistics_table.R R/stored_job_submission.R R/structure_candidate.R R/structure_candidate_formula.R @@ -92,15 +105,23 @@ R/structure_candidate_scored.R R/structure_db_search.R R/subscription.R R/subscription_consumables.R +R/tag.R +R/tag_definition.R +R/tag_definition_import.R +R/tag_group.R +R/tags_api.R R/term.R R/timeout.R R/trace_annotation_experimental.R R/trace_experimental.R R/trace_set_experimental.R R/use_heuristic.R +R/web_server_namespace.R R/zodiac.R +R/zodiac_analogue_nodes.R R/zodiac_edge_filter_thresholds.R R/zodiac_epochs.R +R/zodiac_library_scoring.R README.md docs/AccountCredentials.md docs/AccountInfo.md @@ -110,6 +131,7 @@ docs/AdductNetworkExperimental.md docs/AdductNodeExperimental.md docs/AlignedFeature.md docs/AlignedFeatureQualityExperimental.md +docs/AllowedFeatures.md docs/AnnotatedMsMsData.md docs/AnnotatedPeak.md docs/AnnotatedSpectrum.md @@ -117,6 +139,8 @@ docs/Axes.md docs/BackgroundComputationsStateEvent.md docs/BasicSpectrum.md docs/BinaryFingerprint.md +docs/BioTransformerParameters.md +docs/BioTransformerSequenceStep.md docs/Canopus.md docs/CanopusPrediction.md docs/Category.md @@ -124,6 +148,7 @@ docs/Compound.md docs/CompoundClass.md docs/CompoundClasses.md docs/CompoundImport.md +docs/CompoundStatisticsApi.md docs/CompoundsApi.md docs/ComputedSubtools.md docs/ConnectionCheck.md @@ -135,13 +160,13 @@ docs/DataImportEvent.md docs/Deviation.md docs/FeatureAnnotations.md docs/FeatureImport.md +docs/FeatureStatisticsApi.md docs/FeaturesApi.md docs/FingerprintPrediction.md +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 @@ -162,25 +187,34 @@ docs/PagedModelAlignedFeature.md docs/PagedModelCompound.md docs/PagedModelFormulaCandidate.md docs/PagedModelJob.md +docs/PagedModelRun.md docs/PagedModelSpectralLibraryMatch.md docs/PagedModelStructureCandidateFormula.md docs/PagedModelStructureCandidateScored.md docs/ParentPeak.md docs/PeakAnnotation.md +docs/PeakPair.md docs/ProjectChangeEvent.md docs/ProjectInfo.md docs/ProjectsApi.md docs/QualityItem.md -docs/QuantificationTableExperimental.md +docs/QuantTableExperimental.md +docs/Run.md +docs/RunOptField.md +docs/RunsApi.md +docs/SampleTypeFoldChangeRequest.md docs/SearchableDatabase.md docs/SearchableDatabaseParameters.md docs/SearchableDatabasesApi.md +docs/SecurityContext.md +docs/SecurityContextPrincipal.md docs/SimplePeak.md docs/Sirius.md docs/SpectralLibraryMatch.md docs/SpectralLibraryMatchSummary.md docs/SpectralLibrarySearch.md docs/SpectrumAnnotation.md +docs/StatisticsTable.md docs/StoredJobSubmission.md docs/StructureCandidate.md docs/StructureCandidateFormula.md @@ -188,12 +222,20 @@ docs/StructureCandidateScored.md docs/StructureDbSearch.md docs/Subscription.md docs/SubscriptionConsumables.md +docs/Tag.md +docs/TagDefinition.md +docs/TagDefinitionImport.md +docs/TagGroup.md +docs/TagsApi.md docs/Term.md docs/Timeout.md docs/TraceAnnotationExperimental.md docs/TraceExperimental.md docs/TraceSetExperimental.md docs/UseHeuristic.md +docs/WebServerNamespace.md docs/Zodiac.md +docs/ZodiacAnalogueNodes.md docs/ZodiacEdgeFilterThresholds.md docs/ZodiacEpochs.md +docs/ZodiacLibraryScoring.md diff --git a/client-api_r/generated/NAMESPACE b/client-api_r/generated/NAMESPACE index e0922a08..c998f4b4 100644 --- a/client-api_r/generated/NAMESPACE +++ b/client-api_r/generated/NAMESPACE @@ -22,6 +22,7 @@ export(AdductNetworkExperimental) export(AdductNodeExperimental) export(AlignedFeature) export(AlignedFeatureQualityExperimental) +export(AllowedFeatures) export(AnnotatedMsMsData) export(AnnotatedPeak) export(AnnotatedSpectrum) @@ -29,6 +30,8 @@ export(Axes) export(BackgroundComputationsStateEvent) export(BasicSpectrum) export(BinaryFingerprint) +export(BioTransformerParameters) +export(BioTransformerSequenceStep) export(Canopus) export(CanopusPrediction) export(Category) @@ -47,10 +50,10 @@ export(Deviation) export(FeatureAnnotations) export(FeatureImport) export(FingerprintPrediction) +export(FoldChange) export(FormulaCandidate) export(FragmentNode) export(FragmentationTree) -export(GuiInfo) export(ImportResult) export(Info) export(IsotopePatternAnnotation) @@ -68,23 +71,31 @@ export(PagedModelAlignedFeature) export(PagedModelCompound) export(PagedModelFormulaCandidate) export(PagedModelJob) +export(PagedModelRun) export(PagedModelSpectralLibraryMatch) export(PagedModelStructureCandidateFormula) export(PagedModelStructureCandidateScored) export(ParentPeak) export(PeakAnnotation) +export(PeakPair) export(ProjectChangeEvent) export(ProjectInfo) export(QualityItem) -export(QuantificationTableExperimental) +export(QuantTableExperimental) +export(Run) +export(RunOptField) +export(SampleTypeFoldChangeRequest) export(SearchableDatabase) export(SearchableDatabaseParameters) +export(SecurityContext) +export(SecurityContextPrincipal) export(SimplePeak) export(Sirius) export(SpectralLibraryMatch) export(SpectralLibraryMatchSummary) export(SpectralLibrarySearch) export(SpectrumAnnotation) +export(StatisticsTable) export(StoredJobSubmission) export(StructureCandidate) export(StructureCandidateFormula) @@ -92,26 +103,36 @@ export(StructureCandidateScored) export(StructureDbSearch) export(Subscription) export(SubscriptionConsumables) +export(Tag) +export(TagDefinition) +export(TagDefinitionImport) +export(TagGroup) export(Term) export(Timeout) export(TraceAnnotationExperimental) export(TraceExperimental) export(TraceSetExperimental) export(UseHeuristic) +export(WebServerNamespace) export(Zodiac) +export(ZodiacAnalogueNodes) export(ZodiacEdgeFilterThresholds) export(ZodiacEpochs) +export(ZodiacLibraryScoring) # APIs export(ActuatorApi) +export(CompoundStatisticsApi) export(CompoundsApi) +export(FeatureStatisticsApi) export(FeaturesApi) -export(GuiApi) export(InfoApi) export(JobsApi) export(LoginAndAccountApi) export(ProjectsApi) +export(RunsApi) export(SearchableDatabasesApi) +export(TagsApi) # SDK export(SiriusSDK) diff --git a/client-api_r/generated/R/actuator_api.R b/client-api_r/generated/R/actuator_api.R index f7680b7d..5aa8ed72 100644 --- a/client-api_r/generated/R/actuator_api.R +++ b/client-api_r/generated/R/actuator_api.R @@ -33,10 +33,7 @@ #' #Actuator web endpoint 'shutdown' #' api_instance <- rsirius_api$new() #' -#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$Shutdown(data_file = "result.txt") -#' result <- api_instance$actuator_api$Shutdown() -#' dput(result) +#' api_instance$actuator_api$Shutdown() #' #' #' } @@ -100,7 +97,7 @@ ActuatorApi <- R6::R6Class( local_var_url_path <- "/actuator/health" # The Accept request HTTP header - local_var_accepts <- list("application/vnd.spring-boot.actuator.v3+json", "application/json", "application/vnd.spring-boot.actuator.v2+json") + local_var_accepts <- list("application/vnd.spring-boot.actuator.v3+json", "application/vnd.spring-boot.actuator.v2+json", "application/json") # The Content-Type representation header local_var_content_types <- list() @@ -147,12 +144,11 @@ ActuatorApi <- R6::R6Class( #' @description #' Actuator web endpoint 'shutdown' #' - #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' - #' @return object - Shutdown = function(data_file = NULL, ...) { - local_var_response <- self$ShutdownWithHttpInfo(data_file = data_file, ...) + #' @return void + Shutdown = function(...) { + local_var_response <- self$ShutdownWithHttpInfo(...) 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) { @@ -167,11 +163,10 @@ ActuatorApi <- R6::R6Class( #' @description #' Actuator web endpoint 'shutdown' #' - #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' - #' @return API response (object) with additional information such as HTTP status code, headers - ShutdownWithHttpInfo = function(data_file = NULL, ...) { + #' @return API response (void) with additional information such as HTTP status code, headers + ShutdownWithHttpInfo = function(...) { args <- list(...) query_params <- list() header_params <- c() @@ -184,7 +179,7 @@ ActuatorApi <- R6::R6Class( local_var_url_path <- "/actuator/shutdown" # The Accept request HTTP header - local_var_accepts <- list("application/vnd.spring-boot.actuator.v3+json", "application/json", "application/vnd.spring-boot.actuator.v2+json") + local_var_accepts <- list() # The Content-Type representation header local_var_content_types <- list() @@ -203,18 +198,7 @@ ActuatorApi <- R6::R6Class( ...) 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) - } - - deserialized_resp_obj <- tryCatch( - self$api_client$deserialize(local_var_resp$response_as_text(), "object", loadNamespace("Rsirius")), - error = function(e) { - stop("Failed to deserialize response") - } - ) - local_var_resp$content <- deserialized_resp_obj + 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) diff --git a/client-api_r/generated/R/aligned_feature.R b/client-api_r/generated/R/aligned_feature.R index 627a1e2e..19fb1927 100644 --- a/client-api_r/generated/R/aligned_feature.R +++ b/client-api_r/generated/R/aligned_feature.R @@ -20,11 +20,12 @@ #' @field quality Quality of this feature. character [optional] #' @field hasMs1 If true, the feature has at lease one MS1 spectrum character [optional] #' @field hasMsMs If true, the feature has at lease one MS/MS spectrum character [optional] -#' @field msData \link{MsData} [optional] -#' @field topAnnotations \link{FeatureAnnotations} [optional] -#' @field topAnnotationsDeNovo \link{FeatureAnnotations} [optional] +#' @field msData Mass Spec data of this feature (input data) \link{MsData} [optional] +#' @field topAnnotations Top annotations of this feature. If a CSI:FingerID structureAnnotation is available, the FormulaCandidate that corresponds to the structureAnnotation is returned. Otherwise, it's the FormulaCandidate with the highest SiriusScore is returned. CANOPUS Compound classes correspond to the FormulaCandidate no matter how it was selected Null if it was not requested und non-null otherwise. \link{FeatureAnnotations} [optional] +#' @field topAnnotationsDeNovo Top de novo annotations of this feature. The FormulaCandidate with the highest SiriusScore is returned. MSNovelist structureAnnotation and CANOPUS compoundClasses correspond to the FormulaCandidate. Null if it was not requested und non-null otherwise. \link{FeatureAnnotations} [optional] #' @field computing Write lock for this feature. If the feature is locked no write operations are possible. True if any computation is modifying this feature or its results character [optional] -#' @field computedTools \link{ComputedSubtools} [optional] +#' @field computedTools 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. \link{ComputedSubtools} [optional] +#' @field tags Key: tagName, value: tag named list(\link{Tag}) [optional] #' @importFrom R6 R6Class #' @importFrom jsonlite fromJSON toJSON #' @export @@ -49,6 +50,7 @@ AlignedFeature <- R6::R6Class( `topAnnotationsDeNovo` = NULL, `computing` = NULL, `computedTools` = NULL, + `tags` = NULL, #' @description #' Initialize a new AlignedFeature class. @@ -66,13 +68,14 @@ AlignedFeature <- R6::R6Class( #' @param quality Quality of this feature. #' @param hasMs1 If true, the feature has at lease one MS1 spectrum #' @param hasMsMs If true, the feature has at lease one MS/MS spectrum - #' @param msData msData - #' @param topAnnotations topAnnotations - #' @param topAnnotationsDeNovo topAnnotationsDeNovo + #' @param msData Mass Spec data of this feature (input data) + #' @param topAnnotations Top annotations of this feature. If a CSI:FingerID structureAnnotation is available, the FormulaCandidate that corresponds to the structureAnnotation is returned. Otherwise, it's the FormulaCandidate with the highest SiriusScore is returned. CANOPUS Compound classes correspond to the FormulaCandidate no matter how it was selected Null if it was not requested und non-null otherwise. + #' @param topAnnotationsDeNovo Top de novo annotations of this feature. The FormulaCandidate with the highest SiriusScore is returned. MSNovelist structureAnnotation and CANOPUS compoundClasses correspond to the FormulaCandidate. Null if it was not requested und non-null otherwise. #' @param computing Write lock for this feature. If the feature is locked no write operations are possible. True if any computation is modifying this feature or its results - #' @param computedTools computedTools + #' @param computedTools 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. + #' @param tags Key: tagName, value: tag #' @param ... Other optional arguments. - initialize = function(`charge`, `detectedAdducts`, `alignedFeatureId` = NULL, `compoundId` = NULL, `name` = NULL, `externalFeatureId` = NULL, `ionMass` = NULL, `rtStartSeconds` = NULL, `rtEndSeconds` = NULL, `rtApexSeconds` = NULL, `quality` = NULL, `hasMs1` = NULL, `hasMsMs` = NULL, `msData` = NULL, `topAnnotations` = NULL, `topAnnotationsDeNovo` = NULL, `computing` = NULL, `computedTools` = NULL, ...) { + initialize = function(`charge`, `detectedAdducts`, `alignedFeatureId` = NULL, `compoundId` = NULL, `name` = NULL, `externalFeatureId` = NULL, `ionMass` = NULL, `rtStartSeconds` = NULL, `rtEndSeconds` = NULL, `rtApexSeconds` = NULL, `quality` = NULL, `hasMs1` = NULL, `hasMsMs` = NULL, `msData` = NULL, `topAnnotations` = NULL, `topAnnotationsDeNovo` = NULL, `computing` = NULL, `computedTools` = NULL, `tags` = NULL, ...) { if (!missing(`charge`)) { if (!(is.numeric(`charge`) && length(`charge`) == 1)) { stop(paste("Error! Invalid data for `charge`. Must be an integer:", `charge`)) @@ -178,6 +181,11 @@ AlignedFeature <- R6::R6Class( stopifnot(R6::is.R6(`computedTools`)) self$`computedTools` <- `computedTools` } + if (!is.null(`tags`)) { + stopifnot(is.vector(`tags`), length(`tags`) != 0) + sapply(`tags`, function(x) stopifnot(R6::is.R6(x))) + self$`tags` <- `tags` + } }, #' @description @@ -283,6 +291,10 @@ AlignedFeature <- R6::R6Class( AlignedFeatureObject[["computedTools"]] <- self$`computedTools`$toSimpleType() } + if (!is.null(self$`tags`)) { + AlignedFeatureObject[["tags"]] <- + lapply(self$`tags`, function(x) x$toSimpleType()) + } return(AlignedFeatureObject) }, @@ -361,6 +373,9 @@ AlignedFeature <- R6::R6Class( `computedtools_object`$fromJSON(jsonlite::toJSON(this_object$`computedTools`, auto_unbox = TRUE, digits = NA, null = 'null')) self$`computedTools` <- `computedtools_object` } + if (!is.null(this_object$`tags`)) { + self$`tags` <- ApiClient$new()$deserializeObj(this_object$`tags`, "map(Tag)", loadNamespace("Rsirius")) + } self }, @@ -406,6 +421,7 @@ AlignedFeature <- R6::R6Class( self$`topAnnotationsDeNovo` <- FeatureAnnotations$new()$fromJSON(jsonlite::toJSON(this_object$`topAnnotationsDeNovo`, auto_unbox = TRUE, digits = NA, null = 'null')) self$`computing` <- this_object$`computing` self$`computedTools` <- ComputedSubtools$new()$fromJSON(jsonlite::toJSON(this_object$`computedTools`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`tags` <- ApiClient$new()$deserializeObj(this_object$`tags`, "map(Tag)", loadNamespace("Rsirius")) self }, diff --git a/client-api_r/generated/R/aligned_feature_quality_experimental.R b/client-api_r/generated/R/aligned_feature_quality_experimental.R index e986237b..ea030f3b 100644 --- a/client-api_r/generated/R/aligned_feature_quality_experimental.R +++ b/client-api_r/generated/R/aligned_feature_quality_experimental.R @@ -194,6 +194,11 @@ AlignedFeatureQualityExperimental <- R6::R6Class( return(FALSE) } + # check if the required `overallQuality` is null + if (is.null(self$`overallQuality`)) { + return(FALSE) + } + # check if the required `categories` is null if (is.null(self$`categories`)) { return(FALSE) @@ -213,6 +218,11 @@ AlignedFeatureQualityExperimental <- R6::R6Class( invalid_fields["alignedFeatureId"] <- "Non-nullable required field `alignedFeatureId` cannot be null." } + # check if the required `overallQuality` is null + if (is.null(self$`overallQuality`)) { + invalid_fields["overallQuality"] <- "Non-nullable required field `overallQuality` cannot be null." + } + # check if the required `categories` is null if (is.null(self$`categories`)) { invalid_fields["categories"] <- "Non-nullable required field `categories` cannot be null." diff --git a/client-api_r/generated/R/allowed_features.R b/client-api_r/generated/R/allowed_features.R new file mode 100644 index 00000000..7e11f7be --- /dev/null +++ b/client-api_r/generated/R/allowed_features.R @@ -0,0 +1,244 @@ +#' Create a new AllowedFeatures +#' +#' @description +#' AllowedFeatures Class +#' +#' @docType class +#' @title AllowedFeatures +#' @description AllowedFeatures Class +#' @format An \code{R6Class} generator object +#' @field cli character [optional] +#' @field api character [optional] +#' @field deNovo character [optional] +#' @field importMSRuns character [optional] +#' @field importPeakLists character [optional] +#' @field importCef character [optional] +#' @importFrom R6 R6Class +#' @importFrom jsonlite fromJSON toJSON +#' @export +AllowedFeatures <- R6::R6Class( + "AllowedFeatures", + public = list( + `cli` = NULL, + `api` = NULL, + `deNovo` = NULL, + `importMSRuns` = NULL, + `importPeakLists` = NULL, + `importCef` = NULL, + + #' @description + #' Initialize a new AllowedFeatures class. + #' + #' @param cli cli + #' @param api api + #' @param deNovo deNovo + #' @param importMSRuns importMSRuns + #' @param importPeakLists importPeakLists + #' @param importCef importCef + #' @param ... Other optional arguments. + initialize = function(`cli` = NULL, `api` = NULL, `deNovo` = NULL, `importMSRuns` = NULL, `importPeakLists` = NULL, `importCef` = NULL, ...) { + if (!is.null(`cli`)) { + if (!(is.logical(`cli`) && length(`cli`) == 1)) { + stop(paste("Error! Invalid data for `cli`. Must be a boolean:", `cli`)) + } + self$`cli` <- `cli` + } + if (!is.null(`api`)) { + if (!(is.logical(`api`) && length(`api`) == 1)) { + stop(paste("Error! Invalid data for `api`. Must be a boolean:", `api`)) + } + self$`api` <- `api` + } + if (!is.null(`deNovo`)) { + if (!(is.logical(`deNovo`) && length(`deNovo`) == 1)) { + stop(paste("Error! Invalid data for `deNovo`. Must be a boolean:", `deNovo`)) + } + self$`deNovo` <- `deNovo` + } + if (!is.null(`importMSRuns`)) { + if (!(is.logical(`importMSRuns`) && length(`importMSRuns`) == 1)) { + stop(paste("Error! Invalid data for `importMSRuns`. Must be a boolean:", `importMSRuns`)) + } + self$`importMSRuns` <- `importMSRuns` + } + if (!is.null(`importPeakLists`)) { + if (!(is.logical(`importPeakLists`) && length(`importPeakLists`) == 1)) { + stop(paste("Error! Invalid data for `importPeakLists`. Must be a boolean:", `importPeakLists`)) + } + self$`importPeakLists` <- `importPeakLists` + } + if (!is.null(`importCef`)) { + if (!(is.logical(`importCef`) && length(`importCef`) == 1)) { + stop(paste("Error! Invalid data for `importCef`. Must be a boolean:", `importCef`)) + } + self$`importCef` <- `importCef` + } + }, + + #' @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 AllowedFeatures as a base R list. + #' @examples + #' # convert array of AllowedFeatures (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 AllowedFeatures to a base R type + #' + #' @return A base R type, e.g. a list or numeric/character array. + toSimpleType = function() { + AllowedFeaturesObject <- list() + if (!is.null(self$`cli`)) { + AllowedFeaturesObject[["cli"]] <- + self$`cli` + } + if (!is.null(self$`api`)) { + AllowedFeaturesObject[["api"]] <- + self$`api` + } + if (!is.null(self$`deNovo`)) { + AllowedFeaturesObject[["deNovo"]] <- + self$`deNovo` + } + if (!is.null(self$`importMSRuns`)) { + AllowedFeaturesObject[["importMSRuns"]] <- + self$`importMSRuns` + } + if (!is.null(self$`importPeakLists`)) { + AllowedFeaturesObject[["importPeakLists"]] <- + self$`importPeakLists` + } + if (!is.null(self$`importCef`)) { + AllowedFeaturesObject[["importCef"]] <- + self$`importCef` + } + return(AllowedFeaturesObject) + }, + + #' @description + #' Deserialize JSON string into an instance of AllowedFeatures + #' + #' @param input_json the JSON input + #' @return the instance of AllowedFeatures + fromJSON = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`cli`)) { + self$`cli` <- this_object$`cli` + } + if (!is.null(this_object$`api`)) { + self$`api` <- this_object$`api` + } + if (!is.null(this_object$`deNovo`)) { + self$`deNovo` <- this_object$`deNovo` + } + if (!is.null(this_object$`importMSRuns`)) { + self$`importMSRuns` <- this_object$`importMSRuns` + } + if (!is.null(this_object$`importPeakLists`)) { + self$`importPeakLists` <- this_object$`importPeakLists` + } + if (!is.null(this_object$`importCef`)) { + self$`importCef` <- this_object$`importCef` + } + self + }, + + #' @description + #' To JSON String + #' + #' @param ... Parameters passed to `jsonlite::toJSON` + #' @return AllowedFeatures 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 AllowedFeatures + #' + #' @param input_json the JSON input + #' @return the instance of AllowedFeatures + fromJSONString = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + self$`cli` <- this_object$`cli` + self$`api` <- this_object$`api` + self$`deNovo` <- this_object$`deNovo` + self$`importMSRuns` <- this_object$`importMSRuns` + self$`importPeakLists` <- this_object$`importPeakLists` + self$`importCef` <- this_object$`importCef` + self + }, + + #' @description + #' Validate JSON input with respect to AllowedFeatures 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 AllowedFeatures + 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 +# AllowedFeatures$unlock() +# +## Below is an example to define the print function +# AllowedFeatures$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 +# AllowedFeatures$lock() + diff --git a/client-api_r/generated/R/annotated_ms_ms_data.R b/client-api_r/generated/R/annotated_ms_ms_data.R index 98a443c7..5c9ff58f 100644 --- a/client-api_r/generated/R/annotated_ms_ms_data.R +++ b/client-api_r/generated/R/annotated_ms_ms_data.R @@ -153,6 +153,11 @@ AnnotatedMsMsData <- R6::R6Class( #' #' @return true if the values in all fields are valid. isValid = function() { + # check if the required `mergedMs2` is null + if (is.null(self$`mergedMs2`)) { + return(FALSE) + } + # check if the required `ms2Spectra` is null if (is.null(self$`ms2Spectra`)) { return(FALSE) @@ -167,6 +172,11 @@ AnnotatedMsMsData <- R6::R6Class( #' @return A list of invalid fields (if any). getInvalidFields = function() { invalid_fields <- list() + # check if the required `mergedMs2` is null + if (is.null(self$`mergedMs2`)) { + invalid_fields["mergedMs2"] <- "Non-nullable required field `mergedMs2` cannot be null." + } + # check if the required `ms2Spectra` is null if (is.null(self$`ms2Spectra`)) { invalid_fields["ms2Spectra"] <- "Non-nullable required field `ms2Spectra` cannot be null." diff --git a/client-api_r/generated/R/annotated_spectrum.R b/client-api_r/generated/R/annotated_spectrum.R index f08e45e7..96c2300f 100644 --- a/client-api_r/generated/R/annotated_spectrum.R +++ b/client-api_r/generated/R/annotated_spectrum.R @@ -13,9 +13,15 @@ #' @field instrument Instrument information. character [optional] #' @field precursorMz Precursor m/z of the MS/MS spectrum Null for spectra where precursor m/z is not applicable numeric [optional] #' @field scanNumber Scan number of the spectrum. Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra) integer [optional] +#' @field cosineQuery True if spectrum is in cosine query normalized format. Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra. character +#' @field precursorPeak A separate precursor peak field to either mark the precursor in the peaklist or provide the precursor peak separately from the spectrum in case the spectrum is in a preprocessed form where the precursor peak has been removed for library matching. NULL if the spectrum does not contain the precursor peak. \link{SimplePeak} [optional] #' @field peaks The peaks of this spectrum which might contain additional annotations such as molecular formulas. list(\link{AnnotatedPeak}) -#' @field absIntensityFactor Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra) numeric [optional] -#' @field spectrumAnnotation \link{SpectrumAnnotation} [optional] +#' @field absIntensityFactor Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)
DEPRECATED: Spectra are always returned with raw intensities. Use provided normalization factors to normalize on the fly. numeric [optional] +#' @field maxNormFactor Factor to convert absolute intensities to MAX norm. numeric [optional] +#' @field sumNormFactor Factor to convert absolute intensities to SUM norm. numeric [optional] +#' @field l2NormFactor Factor to convert absolute intensities to L2 (Euclidean) norm. numeric [optional] +#' @field firstPeakNormFactor Factor to convert absolute intensities to normalize intensities by first peak intensity. numeric [optional] +#' @field spectrumAnnotation Optional Annotations of this spectrum. \link{SpectrumAnnotation} [optional] #' @importFrom R6 R6Class #' @importFrom jsonlite fromJSON toJSON #' @export @@ -28,13 +34,20 @@ AnnotatedSpectrum <- R6::R6Class( `instrument` = NULL, `precursorMz` = NULL, `scanNumber` = NULL, + `cosineQuery` = NULL, + `precursorPeak` = NULL, `peaks` = NULL, `absIntensityFactor` = NULL, + `maxNormFactor` = NULL, + `sumNormFactor` = NULL, + `l2NormFactor` = NULL, + `firstPeakNormFactor` = NULL, `spectrumAnnotation` = NULL, #' @description #' Initialize a new AnnotatedSpectrum class. #' + #' @param cosineQuery True if spectrum is in cosine query normalized format. Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra. #' @param peaks The peaks of this spectrum which might contain additional annotations such as molecular formulas. #' @param name Optional Displayable name of this spectrum. #' @param msLevel MS level of the measured spectrum. Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero @@ -42,10 +55,21 @@ AnnotatedSpectrum <- R6::R6Class( #' @param instrument Instrument information. #' @param precursorMz Precursor m/z of the MS/MS spectrum Null for spectra where precursor m/z is not applicable #' @param scanNumber Scan number of the spectrum. Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra) - #' @param absIntensityFactor Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra) - #' @param spectrumAnnotation spectrumAnnotation + #' @param precursorPeak A separate precursor peak field to either mark the precursor in the peaklist or provide the precursor peak separately from the spectrum in case the spectrum is in a preprocessed form where the precursor peak has been removed for library matching. NULL if the spectrum does not contain the precursor peak. + #' @param absIntensityFactor Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)
DEPRECATED: Spectra are always returned with raw intensities. Use provided normalization factors to normalize on the fly. + #' @param maxNormFactor Factor to convert absolute intensities to MAX norm. + #' @param sumNormFactor Factor to convert absolute intensities to SUM norm. + #' @param l2NormFactor Factor to convert absolute intensities to L2 (Euclidean) norm. + #' @param firstPeakNormFactor Factor to convert absolute intensities to normalize intensities by first peak intensity. + #' @param spectrumAnnotation Optional Annotations of this spectrum. #' @param ... Other optional arguments. - initialize = function(`peaks`, `name` = NULL, `msLevel` = NULL, `collisionEnergy` = NULL, `instrument` = NULL, `precursorMz` = NULL, `scanNumber` = NULL, `absIntensityFactor` = NULL, `spectrumAnnotation` = NULL, ...) { + initialize = function(`cosineQuery`, `peaks`, `name` = NULL, `msLevel` = NULL, `collisionEnergy` = NULL, `instrument` = NULL, `precursorMz` = NULL, `scanNumber` = NULL, `precursorPeak` = NULL, `absIntensityFactor` = NULL, `maxNormFactor` = NULL, `sumNormFactor` = NULL, `l2NormFactor` = NULL, `firstPeakNormFactor` = NULL, `spectrumAnnotation` = NULL, ...) { + if (!missing(`cosineQuery`)) { + if (!(is.logical(`cosineQuery`) && length(`cosineQuery`) == 1)) { + stop(paste("Error! Invalid data for `cosineQuery`. Must be a boolean:", `cosineQuery`)) + } + self$`cosineQuery` <- `cosineQuery` + } if (!missing(`peaks`)) { stopifnot(is.vector(`peaks`), length(`peaks`) != 0) sapply(`peaks`, function(x) stopifnot(R6::is.R6(x))) @@ -87,12 +111,40 @@ AnnotatedSpectrum <- R6::R6Class( } self$`scanNumber` <- `scanNumber` } + if (!is.null(`precursorPeak`)) { + stopifnot(R6::is.R6(`precursorPeak`)) + self$`precursorPeak` <- `precursorPeak` + } if (!is.null(`absIntensityFactor`)) { if (!(is.numeric(`absIntensityFactor`) && length(`absIntensityFactor`) == 1)) { stop(paste("Error! Invalid data for `absIntensityFactor`. Must be a number:", `absIntensityFactor`)) } self$`absIntensityFactor` <- `absIntensityFactor` } + if (!is.null(`maxNormFactor`)) { + if (!(is.numeric(`maxNormFactor`) && length(`maxNormFactor`) == 1)) { + stop(paste("Error! Invalid data for `maxNormFactor`. Must be a number:", `maxNormFactor`)) + } + self$`maxNormFactor` <- `maxNormFactor` + } + if (!is.null(`sumNormFactor`)) { + if (!(is.numeric(`sumNormFactor`) && length(`sumNormFactor`) == 1)) { + stop(paste("Error! Invalid data for `sumNormFactor`. Must be a number:", `sumNormFactor`)) + } + self$`sumNormFactor` <- `sumNormFactor` + } + if (!is.null(`l2NormFactor`)) { + if (!(is.numeric(`l2NormFactor`) && length(`l2NormFactor`) == 1)) { + stop(paste("Error! Invalid data for `l2NormFactor`. Must be a number:", `l2NormFactor`)) + } + self$`l2NormFactor` <- `l2NormFactor` + } + if (!is.null(`firstPeakNormFactor`)) { + if (!(is.numeric(`firstPeakNormFactor`) && length(`firstPeakNormFactor`) == 1)) { + stop(paste("Error! Invalid data for `firstPeakNormFactor`. Must be a number:", `firstPeakNormFactor`)) + } + self$`firstPeakNormFactor` <- `firstPeakNormFactor` + } if (!is.null(`spectrumAnnotation`)) { stopifnot(R6::is.R6(`spectrumAnnotation`)) self$`spectrumAnnotation` <- `spectrumAnnotation` @@ -154,6 +206,14 @@ AnnotatedSpectrum <- R6::R6Class( AnnotatedSpectrumObject[["scanNumber"]] <- self$`scanNumber` } + if (!is.null(self$`cosineQuery`)) { + AnnotatedSpectrumObject[["cosineQuery"]] <- + self$`cosineQuery` + } + if (!is.null(self$`precursorPeak`)) { + AnnotatedSpectrumObject[["precursorPeak"]] <- + self$`precursorPeak`$toSimpleType() + } if (!is.null(self$`peaks`)) { AnnotatedSpectrumObject[["peaks"]] <- lapply(self$`peaks`, function(x) x$toSimpleType()) @@ -162,6 +222,22 @@ AnnotatedSpectrum <- R6::R6Class( AnnotatedSpectrumObject[["absIntensityFactor"]] <- self$`absIntensityFactor` } + if (!is.null(self$`maxNormFactor`)) { + AnnotatedSpectrumObject[["maxNormFactor"]] <- + self$`maxNormFactor` + } + if (!is.null(self$`sumNormFactor`)) { + AnnotatedSpectrumObject[["sumNormFactor"]] <- + self$`sumNormFactor` + } + if (!is.null(self$`l2NormFactor`)) { + AnnotatedSpectrumObject[["l2NormFactor"]] <- + self$`l2NormFactor` + } + if (!is.null(self$`firstPeakNormFactor`)) { + AnnotatedSpectrumObject[["firstPeakNormFactor"]] <- + self$`firstPeakNormFactor` + } if (!is.null(self$`spectrumAnnotation`)) { AnnotatedSpectrumObject[["spectrumAnnotation"]] <- self$`spectrumAnnotation`$toSimpleType() @@ -194,12 +270,32 @@ AnnotatedSpectrum <- R6::R6Class( if (!is.null(this_object$`scanNumber`)) { self$`scanNumber` <- this_object$`scanNumber` } + if (!is.null(this_object$`cosineQuery`)) { + self$`cosineQuery` <- this_object$`cosineQuery` + } + if (!is.null(this_object$`precursorPeak`)) { + `precursorpeak_object` <- SimplePeak$new() + `precursorpeak_object`$fromJSON(jsonlite::toJSON(this_object$`precursorPeak`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`precursorPeak` <- `precursorpeak_object` + } if (!is.null(this_object$`peaks`)) { self$`peaks` <- ApiClient$new()$deserializeObj(this_object$`peaks`, "array[AnnotatedPeak]", loadNamespace("Rsirius")) } if (!is.null(this_object$`absIntensityFactor`)) { self$`absIntensityFactor` <- this_object$`absIntensityFactor` } + if (!is.null(this_object$`maxNormFactor`)) { + self$`maxNormFactor` <- this_object$`maxNormFactor` + } + if (!is.null(this_object$`sumNormFactor`)) { + self$`sumNormFactor` <- this_object$`sumNormFactor` + } + if (!is.null(this_object$`l2NormFactor`)) { + self$`l2NormFactor` <- this_object$`l2NormFactor` + } + if (!is.null(this_object$`firstPeakNormFactor`)) { + self$`firstPeakNormFactor` <- this_object$`firstPeakNormFactor` + } if (!is.null(this_object$`spectrumAnnotation`)) { `spectrumannotation_object` <- SpectrumAnnotation$new() `spectrumannotation_object`$fromJSON(jsonlite::toJSON(this_object$`spectrumAnnotation`, auto_unbox = TRUE, digits = NA, null = 'null')) @@ -232,8 +328,14 @@ AnnotatedSpectrum <- R6::R6Class( self$`instrument` <- this_object$`instrument` self$`precursorMz` <- this_object$`precursorMz` self$`scanNumber` <- this_object$`scanNumber` + self$`cosineQuery` <- this_object$`cosineQuery` + self$`precursorPeak` <- SimplePeak$new()$fromJSON(jsonlite::toJSON(this_object$`precursorPeak`, auto_unbox = TRUE, digits = NA, null = 'null')) self$`peaks` <- ApiClient$new()$deserializeObj(this_object$`peaks`, "array[AnnotatedPeak]", loadNamespace("Rsirius")) self$`absIntensityFactor` <- this_object$`absIntensityFactor` + self$`maxNormFactor` <- this_object$`maxNormFactor` + self$`sumNormFactor` <- this_object$`sumNormFactor` + self$`l2NormFactor` <- this_object$`l2NormFactor` + self$`firstPeakNormFactor` <- this_object$`firstPeakNormFactor` self$`spectrumAnnotation` <- SpectrumAnnotation$new()$fromJSON(jsonlite::toJSON(this_object$`spectrumAnnotation`, auto_unbox = TRUE, digits = NA, null = 'null')) self }, @@ -244,6 +346,14 @@ AnnotatedSpectrum <- R6::R6Class( #' @param input the JSON input validateJSON = function(input) { input_json <- jsonlite::fromJSON(input) + # check the required field `cosineQuery` + if (!is.null(input_json$`cosineQuery`)) { + if (!(is.logical(input_json$`cosineQuery`) && length(input_json$`cosineQuery`) == 1)) { + stop(paste("Error! Invalid data for `cosineQuery`. Must be a boolean:", input_json$`cosineQuery`)) + } + } else { + stop(paste("The JSON input `", input, "` is invalid for AnnotatedSpectrum: the required field `cosineQuery` is missing.")) + } # check the required field `peaks` if (!is.null(input_json$`peaks`)) { stopifnot(is.vector(input_json$`peaks`), length(input_json$`peaks`) != 0) @@ -266,6 +376,11 @@ AnnotatedSpectrum <- R6::R6Class( #' #' @return true if the values in all fields are valid. isValid = function() { + # check if the required `cosineQuery` is null + if (is.null(self$`cosineQuery`)) { + return(FALSE) + } + # check if the required `peaks` is null if (is.null(self$`peaks`)) { return(FALSE) @@ -280,6 +395,11 @@ AnnotatedSpectrum <- R6::R6Class( #' @return A list of invalid fields (if any). getInvalidFields = function() { invalid_fields <- list() + # check if the required `cosineQuery` is null + if (is.null(self$`cosineQuery`)) { + invalid_fields["cosineQuery"] <- "Non-nullable required field `cosineQuery` cannot be null." + } + # check if the required `peaks` is null if (is.null(self$`peaks`)) { invalid_fields["peaks"] <- "Non-nullable required field `peaks` cannot be null." diff --git a/client-api_r/generated/R/basic_spectrum.R b/client-api_r/generated/R/basic_spectrum.R index 65db84a1..467d5065 100644 --- a/client-api_r/generated/R/basic_spectrum.R +++ b/client-api_r/generated/R/basic_spectrum.R @@ -13,8 +13,14 @@ #' @field instrument Instrument information. character [optional] #' @field precursorMz Precursor m/z of the MS/MS spectrum Null for spectra where precursor m/z is not applicable numeric [optional] #' @field scanNumber Scan number of the spectrum. Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra) integer [optional] +#' @field cosineQuery True if spectrum is in cosine query normalized format. Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra. character +#' @field precursorPeak A separate precursor peak field to either mark the precursor in the peaklist or provide the precursor peak separately from the spectrum in case the spectrum is in a preprocessed form where the precursor peak has been removed for library matching. NULL if the spectrum does not contain the precursor peak. \link{SimplePeak} [optional] #' @field peaks The peaks of this spectrum which might contain additional annotations such as molecular formulas. list(\link{SimplePeak}) -#' @field absIntensityFactor Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra) numeric [optional] +#' @field absIntensityFactor Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)
DEPRECATED: Spectra are always returned with raw intensities. Use provided normalization factors to normalize on the fly. numeric [optional] +#' @field maxNormFactor Factor to convert absolute intensities to MAX norm. numeric [optional] +#' @field sumNormFactor Factor to convert absolute intensities to SUM norm. numeric [optional] +#' @field l2NormFactor Factor to convert absolute intensities to L2 (Euclidean) norm. numeric [optional] +#' @field firstPeakNormFactor Factor to convert absolute intensities to normalize intensities by first peak intensity. numeric [optional] #' @importFrom R6 R6Class #' @importFrom jsonlite fromJSON toJSON #' @export @@ -27,12 +33,19 @@ BasicSpectrum <- R6::R6Class( `instrument` = NULL, `precursorMz` = NULL, `scanNumber` = NULL, + `cosineQuery` = NULL, + `precursorPeak` = NULL, `peaks` = NULL, `absIntensityFactor` = NULL, + `maxNormFactor` = NULL, + `sumNormFactor` = NULL, + `l2NormFactor` = NULL, + `firstPeakNormFactor` = NULL, #' @description #' Initialize a new BasicSpectrum class. #' + #' @param cosineQuery True if spectrum is in cosine query normalized format. Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra. #' @param peaks The peaks of this spectrum which might contain additional annotations such as molecular formulas. #' @param name Optional Displayable name of this spectrum. #' @param msLevel MS level of the measured spectrum. Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero @@ -40,9 +53,20 @@ BasicSpectrum <- R6::R6Class( #' @param instrument Instrument information. #' @param precursorMz Precursor m/z of the MS/MS spectrum Null for spectra where precursor m/z is not applicable #' @param scanNumber Scan number of the spectrum. Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra) - #' @param absIntensityFactor Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra) + #' @param precursorPeak A separate precursor peak field to either mark the precursor in the peaklist or provide the precursor peak separately from the spectrum in case the spectrum is in a preprocessed form where the precursor peak has been removed for library matching. NULL if the spectrum does not contain the precursor peak. + #' @param absIntensityFactor Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)
DEPRECATED: Spectra are always returned with raw intensities. Use provided normalization factors to normalize on the fly. + #' @param maxNormFactor Factor to convert absolute intensities to MAX norm. + #' @param sumNormFactor Factor to convert absolute intensities to SUM norm. + #' @param l2NormFactor Factor to convert absolute intensities to L2 (Euclidean) norm. + #' @param firstPeakNormFactor Factor to convert absolute intensities to normalize intensities by first peak intensity. #' @param ... Other optional arguments. - initialize = function(`peaks`, `name` = NULL, `msLevel` = NULL, `collisionEnergy` = NULL, `instrument` = NULL, `precursorMz` = NULL, `scanNumber` = NULL, `absIntensityFactor` = NULL, ...) { + initialize = function(`cosineQuery`, `peaks`, `name` = NULL, `msLevel` = NULL, `collisionEnergy` = NULL, `instrument` = NULL, `precursorMz` = NULL, `scanNumber` = NULL, `precursorPeak` = NULL, `absIntensityFactor` = NULL, `maxNormFactor` = NULL, `sumNormFactor` = NULL, `l2NormFactor` = NULL, `firstPeakNormFactor` = NULL, ...) { + if (!missing(`cosineQuery`)) { + if (!(is.logical(`cosineQuery`) && length(`cosineQuery`) == 1)) { + stop(paste("Error! Invalid data for `cosineQuery`. Must be a boolean:", `cosineQuery`)) + } + self$`cosineQuery` <- `cosineQuery` + } if (!missing(`peaks`)) { stopifnot(is.vector(`peaks`), length(`peaks`) != 0) sapply(`peaks`, function(x) stopifnot(R6::is.R6(x))) @@ -84,12 +108,40 @@ BasicSpectrum <- R6::R6Class( } self$`scanNumber` <- `scanNumber` } + if (!is.null(`precursorPeak`)) { + stopifnot(R6::is.R6(`precursorPeak`)) + self$`precursorPeak` <- `precursorPeak` + } if (!is.null(`absIntensityFactor`)) { if (!(is.numeric(`absIntensityFactor`) && length(`absIntensityFactor`) == 1)) { stop(paste("Error! Invalid data for `absIntensityFactor`. Must be a number:", `absIntensityFactor`)) } self$`absIntensityFactor` <- `absIntensityFactor` } + if (!is.null(`maxNormFactor`)) { + if (!(is.numeric(`maxNormFactor`) && length(`maxNormFactor`) == 1)) { + stop(paste("Error! Invalid data for `maxNormFactor`. Must be a number:", `maxNormFactor`)) + } + self$`maxNormFactor` <- `maxNormFactor` + } + if (!is.null(`sumNormFactor`)) { + if (!(is.numeric(`sumNormFactor`) && length(`sumNormFactor`) == 1)) { + stop(paste("Error! Invalid data for `sumNormFactor`. Must be a number:", `sumNormFactor`)) + } + self$`sumNormFactor` <- `sumNormFactor` + } + if (!is.null(`l2NormFactor`)) { + if (!(is.numeric(`l2NormFactor`) && length(`l2NormFactor`) == 1)) { + stop(paste("Error! Invalid data for `l2NormFactor`. Must be a number:", `l2NormFactor`)) + } + self$`l2NormFactor` <- `l2NormFactor` + } + if (!is.null(`firstPeakNormFactor`)) { + if (!(is.numeric(`firstPeakNormFactor`) && length(`firstPeakNormFactor`) == 1)) { + stop(paste("Error! Invalid data for `firstPeakNormFactor`. Must be a number:", `firstPeakNormFactor`)) + } + self$`firstPeakNormFactor` <- `firstPeakNormFactor` + } }, #' @description @@ -147,6 +199,14 @@ BasicSpectrum <- R6::R6Class( BasicSpectrumObject[["scanNumber"]] <- self$`scanNumber` } + if (!is.null(self$`cosineQuery`)) { + BasicSpectrumObject[["cosineQuery"]] <- + self$`cosineQuery` + } + if (!is.null(self$`precursorPeak`)) { + BasicSpectrumObject[["precursorPeak"]] <- + self$`precursorPeak`$toSimpleType() + } if (!is.null(self$`peaks`)) { BasicSpectrumObject[["peaks"]] <- lapply(self$`peaks`, function(x) x$toSimpleType()) @@ -155,6 +215,22 @@ BasicSpectrum <- R6::R6Class( BasicSpectrumObject[["absIntensityFactor"]] <- self$`absIntensityFactor` } + if (!is.null(self$`maxNormFactor`)) { + BasicSpectrumObject[["maxNormFactor"]] <- + self$`maxNormFactor` + } + if (!is.null(self$`sumNormFactor`)) { + BasicSpectrumObject[["sumNormFactor"]] <- + self$`sumNormFactor` + } + if (!is.null(self$`l2NormFactor`)) { + BasicSpectrumObject[["l2NormFactor"]] <- + self$`l2NormFactor` + } + if (!is.null(self$`firstPeakNormFactor`)) { + BasicSpectrumObject[["firstPeakNormFactor"]] <- + self$`firstPeakNormFactor` + } return(BasicSpectrumObject) }, @@ -183,12 +259,32 @@ BasicSpectrum <- R6::R6Class( if (!is.null(this_object$`scanNumber`)) { self$`scanNumber` <- this_object$`scanNumber` } + if (!is.null(this_object$`cosineQuery`)) { + self$`cosineQuery` <- this_object$`cosineQuery` + } + if (!is.null(this_object$`precursorPeak`)) { + `precursorpeak_object` <- SimplePeak$new() + `precursorpeak_object`$fromJSON(jsonlite::toJSON(this_object$`precursorPeak`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`precursorPeak` <- `precursorpeak_object` + } if (!is.null(this_object$`peaks`)) { self$`peaks` <- ApiClient$new()$deserializeObj(this_object$`peaks`, "array[SimplePeak]", loadNamespace("Rsirius")) } if (!is.null(this_object$`absIntensityFactor`)) { self$`absIntensityFactor` <- this_object$`absIntensityFactor` } + if (!is.null(this_object$`maxNormFactor`)) { + self$`maxNormFactor` <- this_object$`maxNormFactor` + } + if (!is.null(this_object$`sumNormFactor`)) { + self$`sumNormFactor` <- this_object$`sumNormFactor` + } + if (!is.null(this_object$`l2NormFactor`)) { + self$`l2NormFactor` <- this_object$`l2NormFactor` + } + if (!is.null(this_object$`firstPeakNormFactor`)) { + self$`firstPeakNormFactor` <- this_object$`firstPeakNormFactor` + } self }, @@ -216,8 +312,14 @@ BasicSpectrum <- R6::R6Class( self$`instrument` <- this_object$`instrument` self$`precursorMz` <- this_object$`precursorMz` self$`scanNumber` <- this_object$`scanNumber` + self$`cosineQuery` <- this_object$`cosineQuery` + self$`precursorPeak` <- SimplePeak$new()$fromJSON(jsonlite::toJSON(this_object$`precursorPeak`, auto_unbox = TRUE, digits = NA, null = 'null')) self$`peaks` <- ApiClient$new()$deserializeObj(this_object$`peaks`, "array[SimplePeak]", loadNamespace("Rsirius")) self$`absIntensityFactor` <- this_object$`absIntensityFactor` + self$`maxNormFactor` <- this_object$`maxNormFactor` + self$`sumNormFactor` <- this_object$`sumNormFactor` + self$`l2NormFactor` <- this_object$`l2NormFactor` + self$`firstPeakNormFactor` <- this_object$`firstPeakNormFactor` self }, @@ -227,6 +329,14 @@ BasicSpectrum <- R6::R6Class( #' @param input the JSON input validateJSON = function(input) { input_json <- jsonlite::fromJSON(input) + # check the required field `cosineQuery` + if (!is.null(input_json$`cosineQuery`)) { + if (!(is.logical(input_json$`cosineQuery`) && length(input_json$`cosineQuery`) == 1)) { + stop(paste("Error! Invalid data for `cosineQuery`. Must be a boolean:", input_json$`cosineQuery`)) + } + } else { + stop(paste("The JSON input `", input, "` is invalid for BasicSpectrum: the required field `cosineQuery` is missing.")) + } # check the required field `peaks` if (!is.null(input_json$`peaks`)) { stopifnot(is.vector(input_json$`peaks`), length(input_json$`peaks`) != 0) @@ -249,6 +359,11 @@ BasicSpectrum <- R6::R6Class( #' #' @return true if the values in all fields are valid. isValid = function() { + # check if the required `cosineQuery` is null + if (is.null(self$`cosineQuery`)) { + return(FALSE) + } + # check if the required `peaks` is null if (is.null(self$`peaks`)) { return(FALSE) @@ -263,6 +378,11 @@ BasicSpectrum <- R6::R6Class( #' @return A list of invalid fields (if any). getInvalidFields = function() { invalid_fields <- list() + # check if the required `cosineQuery` is null + if (is.null(self$`cosineQuery`)) { + invalid_fields["cosineQuery"] <- "Non-nullable required field `cosineQuery` cannot be null." + } + # check if the required `peaks` is null if (is.null(self$`peaks`)) { invalid_fields["peaks"] <- "Non-nullable required field `peaks` cannot be null." diff --git a/client-api_r/generated/R/bio_transformer_parameters.R b/client-api_r/generated/R/bio_transformer_parameters.R new file mode 100644 index 00000000..b1822162 --- /dev/null +++ b/client-api_r/generated/R/bio_transformer_parameters.R @@ -0,0 +1,280 @@ +#' Create a new BioTransformerParameters +#' +#' @description +#' BioTransformerParameters Class +#' +#' @docType class +#' @title BioTransformerParameters +#' @description BioTransformerParameters Class +#' @format An \code{R6Class} generator object +#' @field cyp450Mode Specify the Phase I/Cyp450 mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that require the Cyp450 mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified that do not need the Cyp450 mode. character +#' @field p2Mode Specify the Phase II mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that require the Phase II mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified that do not need the Phase II mode. character +#' @field useDB \"Specify if you want to enable the retrieving from database (HMDB) feature.\" character [optional] +#' @field bioTransformerSequenceSteps Specify BioTransformerSequenceSteps to be applied to input structures. MultiStep MetabolicTransformations can only be used as singletons (list size of one). list(\link{BioTransformerSequenceStep}) +#' @importFrom R6 R6Class +#' @importFrom jsonlite fromJSON toJSON +#' @export +BioTransformerParameters <- R6::R6Class( + "BioTransformerParameters", + public = list( + `cyp450Mode` = NULL, + `p2Mode` = NULL, + `useDB` = NULL, + `bioTransformerSequenceSteps` = NULL, + + #' @description + #' Initialize a new BioTransformerParameters class. + #' + #' @param cyp450Mode Specify the Phase I/Cyp450 mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that require the Cyp450 mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified that do not need the Cyp450 mode. + #' @param p2Mode Specify the Phase II mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that require the Phase II mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified that do not need the Phase II mode. + #' @param bioTransformerSequenceSteps Specify BioTransformerSequenceSteps to be applied to input structures. MultiStep MetabolicTransformations can only be used as singletons (list size of one). + #' @param useDB \"Specify if you want to enable the retrieving from database (HMDB) feature.\". Default to TRUE. + #' @param ... Other optional arguments. + initialize = function(`cyp450Mode`, `p2Mode`, `bioTransformerSequenceSteps`, `useDB` = TRUE, ...) { + if (!missing(`cyp450Mode`)) { + if (!(`cyp450Mode` %in% c("RULE_BASED", "CY_PRODUCT", "COMBINED"))) { + stop(paste("Error! \"", `cyp450Mode`, "\" cannot be assigned to `cyp450Mode`. Must be \"RULE_BASED\", \"CY_PRODUCT\", \"COMBINED\".", sep = "")) + } + if (!(is.character(`cyp450Mode`) && length(`cyp450Mode`) == 1)) { + stop(paste("Error! Invalid data for `cyp450Mode`. Must be a string:", `cyp450Mode`)) + } + self$`cyp450Mode` <- `cyp450Mode` + } + if (!missing(`p2Mode`)) { + if (!(`p2Mode` %in% c("BT_RULE_BASED", "P2_RULE_ONLY", "COMBINED_RULES"))) { + stop(paste("Error! \"", `p2Mode`, "\" cannot be assigned to `p2Mode`. Must be \"BT_RULE_BASED\", \"P2_RULE_ONLY\", \"COMBINED_RULES\".", sep = "")) + } + if (!(is.character(`p2Mode`) && length(`p2Mode`) == 1)) { + stop(paste("Error! Invalid data for `p2Mode`. Must be a string:", `p2Mode`)) + } + self$`p2Mode` <- `p2Mode` + } + if (!missing(`bioTransformerSequenceSteps`)) { + stopifnot(is.vector(`bioTransformerSequenceSteps`), length(`bioTransformerSequenceSteps`) != 0) + sapply(`bioTransformerSequenceSteps`, function(x) stopifnot(R6::is.R6(x))) + self$`bioTransformerSequenceSteps` <- `bioTransformerSequenceSteps` + } + if (!is.null(`useDB`)) { + if (!(is.logical(`useDB`) && length(`useDB`) == 1)) { + stop(paste("Error! Invalid data for `useDB`. Must be a boolean:", `useDB`)) + } + self$`useDB` <- `useDB` + } + }, + + #' @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 BioTransformerParameters as a base R list. + #' @examples + #' # convert array of BioTransformerParameters (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 BioTransformerParameters to a base R type + #' + #' @return A base R type, e.g. a list or numeric/character array. + toSimpleType = function() { + BioTransformerParametersObject <- list() + if (!is.null(self$`cyp450Mode`)) { + BioTransformerParametersObject[["cyp450Mode"]] <- + self$`cyp450Mode` + } + if (!is.null(self$`p2Mode`)) { + BioTransformerParametersObject[["p2Mode"]] <- + self$`p2Mode` + } + if (!is.null(self$`useDB`)) { + BioTransformerParametersObject[["useDB"]] <- + self$`useDB` + } + if (!is.null(self$`bioTransformerSequenceSteps`)) { + BioTransformerParametersObject[["bioTransformerSequenceSteps"]] <- + lapply(self$`bioTransformerSequenceSteps`, function(x) x$toSimpleType()) + } + return(BioTransformerParametersObject) + }, + + #' @description + #' Deserialize JSON string into an instance of BioTransformerParameters + #' + #' @param input_json the JSON input + #' @return the instance of BioTransformerParameters + fromJSON = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`cyp450Mode`)) { + if (!is.null(this_object$`cyp450Mode`) && !(this_object$`cyp450Mode` %in% c("RULE_BASED", "CY_PRODUCT", "COMBINED"))) { + stop(paste("Error! \"", this_object$`cyp450Mode`, "\" cannot be assigned to `cyp450Mode`. Must be \"RULE_BASED\", \"CY_PRODUCT\", \"COMBINED\".", sep = "")) + } + self$`cyp450Mode` <- this_object$`cyp450Mode` + } + if (!is.null(this_object$`p2Mode`)) { + if (!is.null(this_object$`p2Mode`) && !(this_object$`p2Mode` %in% c("BT_RULE_BASED", "P2_RULE_ONLY", "COMBINED_RULES"))) { + stop(paste("Error! \"", this_object$`p2Mode`, "\" cannot be assigned to `p2Mode`. Must be \"BT_RULE_BASED\", \"P2_RULE_ONLY\", \"COMBINED_RULES\".", sep = "")) + } + self$`p2Mode` <- this_object$`p2Mode` + } + if (!is.null(this_object$`useDB`)) { + self$`useDB` <- this_object$`useDB` + } + if (!is.null(this_object$`bioTransformerSequenceSteps`)) { + self$`bioTransformerSequenceSteps` <- ApiClient$new()$deserializeObj(this_object$`bioTransformerSequenceSteps`, "array[BioTransformerSequenceStep]", loadNamespace("Rsirius")) + } + self + }, + + #' @description + #' To JSON String + #' + #' @param ... Parameters passed to `jsonlite::toJSON` + #' @return BioTransformerParameters 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 BioTransformerParameters + #' + #' @param input_json the JSON input + #' @return the instance of BioTransformerParameters + fromJSONString = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`cyp450Mode`) && !(this_object$`cyp450Mode` %in% c("RULE_BASED", "CY_PRODUCT", "COMBINED"))) { + stop(paste("Error! \"", this_object$`cyp450Mode`, "\" cannot be assigned to `cyp450Mode`. Must be \"RULE_BASED\", \"CY_PRODUCT\", \"COMBINED\".", sep = "")) + } + self$`cyp450Mode` <- this_object$`cyp450Mode` + if (!is.null(this_object$`p2Mode`) && !(this_object$`p2Mode` %in% c("BT_RULE_BASED", "P2_RULE_ONLY", "COMBINED_RULES"))) { + stop(paste("Error! \"", this_object$`p2Mode`, "\" cannot be assigned to `p2Mode`. Must be \"BT_RULE_BASED\", \"P2_RULE_ONLY\", \"COMBINED_RULES\".", sep = "")) + } + self$`p2Mode` <- this_object$`p2Mode` + self$`useDB` <- this_object$`useDB` + self$`bioTransformerSequenceSteps` <- ApiClient$new()$deserializeObj(this_object$`bioTransformerSequenceSteps`, "array[BioTransformerSequenceStep]", loadNamespace("Rsirius")) + self + }, + + #' @description + #' Validate JSON input with respect to BioTransformerParameters and throw an exception if invalid + #' + #' @param input the JSON input + validateJSON = function(input) { + input_json <- jsonlite::fromJSON(input) + # check the required field `cyp450Mode` + if (!is.null(input_json$`cyp450Mode`)) { + if (!(is.character(input_json$`cyp450Mode`) && length(input_json$`cyp450Mode`) == 1)) { + stop(paste("Error! Invalid data for `cyp450Mode`. Must be a string:", input_json$`cyp450Mode`)) + } + } else { + stop(paste("The JSON input `", input, "` is invalid for BioTransformerParameters: the required field `cyp450Mode` is missing.")) + } + # check the required field `p2Mode` + if (!is.null(input_json$`p2Mode`)) { + if (!(is.character(input_json$`p2Mode`) && length(input_json$`p2Mode`) == 1)) { + stop(paste("Error! Invalid data for `p2Mode`. Must be a string:", input_json$`p2Mode`)) + } + } else { + stop(paste("The JSON input `", input, "` is invalid for BioTransformerParameters: the required field `p2Mode` is missing.")) + } + # check the required field `bioTransformerSequenceSteps` + if (!is.null(input_json$`bioTransformerSequenceSteps`)) { + stopifnot(is.vector(input_json$`bioTransformerSequenceSteps`), length(input_json$`bioTransformerSequenceSteps`) != 0) + tmp <- sapply(input_json$`bioTransformerSequenceSteps`, function(x) stopifnot(R6::is.R6(x))) + } else { + stop(paste("The JSON input `", input, "` is invalid for BioTransformerParameters: the required field `bioTransformerSequenceSteps` is missing.")) + } + }, + + #' @description + #' To string (JSON format) + #' + #' @return String representation of BioTransformerParameters + 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() { + # check if the required `cyp450Mode` is null + if (is.null(self$`cyp450Mode`)) { + return(FALSE) + } + + # check if the required `p2Mode` is null + if (is.null(self$`p2Mode`)) { + return(FALSE) + } + + # check if the required `bioTransformerSequenceSteps` is null + if (is.null(self$`bioTransformerSequenceSteps`)) { + return(FALSE) + } + + TRUE + }, + + #' @description + #' Return a list of invalid fields (if any). + #' + #' @return A list of invalid fields (if any). + getInvalidFields = function() { + invalid_fields <- list() + # check if the required `cyp450Mode` is null + if (is.null(self$`cyp450Mode`)) { + invalid_fields["cyp450Mode"] <- "Non-nullable required field `cyp450Mode` cannot be null." + } + + # check if the required `p2Mode` is null + if (is.null(self$`p2Mode`)) { + invalid_fields["p2Mode"] <- "Non-nullable required field `p2Mode` cannot be null." + } + + # check if the required `bioTransformerSequenceSteps` is null + if (is.null(self$`bioTransformerSequenceSteps`)) { + invalid_fields["bioTransformerSequenceSteps"] <- "Non-nullable required field `bioTransformerSequenceSteps` cannot be null." + } + + 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 +# BioTransformerParameters$unlock() +# +## Below is an example to define the print function +# BioTransformerParameters$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 +# BioTransformerParameters$lock() + diff --git a/client-api_r/generated/R/bio_transformer_sequence_step.R b/client-api_r/generated/R/bio_transformer_sequence_step.R new file mode 100644 index 00000000..8b9a373e --- /dev/null +++ b/client-api_r/generated/R/bio_transformer_sequence_step.R @@ -0,0 +1,185 @@ +#' Create a new BioTransformerSequenceStep +#' +#' @description +#' BioTransformerSequenceStep Class +#' +#' @docType class +#' @title BioTransformerSequenceStep +#' @description BioTransformerSequenceStep Class +#' @format An \code{R6Class} generator object +#' @field metabolicTransformation character [optional] +#' @field iterations integer [optional] +#' @importFrom R6 R6Class +#' @importFrom jsonlite fromJSON toJSON +#' @export +BioTransformerSequenceStep <- R6::R6Class( + "BioTransformerSequenceStep", + public = list( + `metabolicTransformation` = NULL, + `iterations` = NULL, + + #' @description + #' Initialize a new BioTransformerSequenceStep class. + #' + #' @param metabolicTransformation metabolicTransformation + #' @param iterations iterations + #' @param ... Other optional arguments. + initialize = function(`metabolicTransformation` = NULL, `iterations` = NULL, ...) { + if (!is.null(`metabolicTransformation`)) { + if (!(`metabolicTransformation` %in% c("PHASE_1_CYP450", "EC_BASED", "PHASE_2", "HUMAN_GUT", "ALL_HUMAN", "ABIOTIC", "HUMAN_CUSTOM_MULTI"))) { + stop(paste("Error! \"", `metabolicTransformation`, "\" cannot be assigned to `metabolicTransformation`. Must be \"PHASE_1_CYP450\", \"EC_BASED\", \"PHASE_2\", \"HUMAN_GUT\", \"ALL_HUMAN\", \"ABIOTIC\", \"HUMAN_CUSTOM_MULTI\".", sep = "")) + } + if (!(is.character(`metabolicTransformation`) && length(`metabolicTransformation`) == 1)) { + stop(paste("Error! Invalid data for `metabolicTransformation`. Must be a string:", `metabolicTransformation`)) + } + self$`metabolicTransformation` <- `metabolicTransformation` + } + if (!is.null(`iterations`)) { + if (!(is.numeric(`iterations`) && length(`iterations`) == 1)) { + stop(paste("Error! Invalid data for `iterations`. Must be an integer:", `iterations`)) + } + self$`iterations` <- `iterations` + } + }, + + #' @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 BioTransformerSequenceStep as a base R list. + #' @examples + #' # convert array of BioTransformerSequenceStep (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 BioTransformerSequenceStep to a base R type + #' + #' @return A base R type, e.g. a list or numeric/character array. + toSimpleType = function() { + BioTransformerSequenceStepObject <- list() + if (!is.null(self$`metabolicTransformation`)) { + BioTransformerSequenceStepObject[["metabolicTransformation"]] <- + self$`metabolicTransformation` + } + if (!is.null(self$`iterations`)) { + BioTransformerSequenceStepObject[["iterations"]] <- + self$`iterations` + } + return(BioTransformerSequenceStepObject) + }, + + #' @description + #' Deserialize JSON string into an instance of BioTransformerSequenceStep + #' + #' @param input_json the JSON input + #' @return the instance of BioTransformerSequenceStep + fromJSON = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`metabolicTransformation`)) { + if (!is.null(this_object$`metabolicTransformation`) && !(this_object$`metabolicTransformation` %in% c("PHASE_1_CYP450", "EC_BASED", "PHASE_2", "HUMAN_GUT", "ALL_HUMAN", "ABIOTIC", "HUMAN_CUSTOM_MULTI"))) { + stop(paste("Error! \"", this_object$`metabolicTransformation`, "\" cannot be assigned to `metabolicTransformation`. Must be \"PHASE_1_CYP450\", \"EC_BASED\", \"PHASE_2\", \"HUMAN_GUT\", \"ALL_HUMAN\", \"ABIOTIC\", \"HUMAN_CUSTOM_MULTI\".", sep = "")) + } + self$`metabolicTransformation` <- this_object$`metabolicTransformation` + } + if (!is.null(this_object$`iterations`)) { + self$`iterations` <- this_object$`iterations` + } + self + }, + + #' @description + #' To JSON String + #' + #' @param ... Parameters passed to `jsonlite::toJSON` + #' @return BioTransformerSequenceStep 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 BioTransformerSequenceStep + #' + #' @param input_json the JSON input + #' @return the instance of BioTransformerSequenceStep + fromJSONString = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`metabolicTransformation`) && !(this_object$`metabolicTransformation` %in% c("PHASE_1_CYP450", "EC_BASED", "PHASE_2", "HUMAN_GUT", "ALL_HUMAN", "ABIOTIC", "HUMAN_CUSTOM_MULTI"))) { + stop(paste("Error! \"", this_object$`metabolicTransformation`, "\" cannot be assigned to `metabolicTransformation`. Must be \"PHASE_1_CYP450\", \"EC_BASED\", \"PHASE_2\", \"HUMAN_GUT\", \"ALL_HUMAN\", \"ABIOTIC\", \"HUMAN_CUSTOM_MULTI\".", sep = "")) + } + self$`metabolicTransformation` <- this_object$`metabolicTransformation` + self$`iterations` <- this_object$`iterations` + self + }, + + #' @description + #' Validate JSON input with respect to BioTransformerSequenceStep 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 BioTransformerSequenceStep + 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 +# BioTransformerSequenceStep$unlock() +# +## Below is an example to define the print function +# BioTransformerSequenceStep$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 +# BioTransformerSequenceStep$lock() + diff --git a/client-api_r/generated/R/compound.R b/client-api_r/generated/R/compound.R index 4f19a62d..484e9e3c 100644 --- a/client-api_r/generated/R/compound.R +++ b/client-api_r/generated/R/compound.R @@ -13,9 +13,10 @@ #' @field rtEndSeconds The merged/consensus retention time end (latest rt) of this compound numeric [optional] #' @field neutralMass Neutral mass of this compound. Ion masse minus the mass of the assigned adduct of each feature of this compound should result in the same neutral mass numeric [optional] #' @field features List of aligned features (adducts) that belong to the same (this) compound list(\link{AlignedFeature}) [optional] -#' @field consensusAnnotations \link{ConsensusAnnotationsCSI} [optional] -#' @field consensusAnnotationsDeNovo \link{ConsensusAnnotationsDeNovo} [optional] -#' @field customAnnotations \link{ConsensusAnnotationsCSI} [optional] +#' @field consensusAnnotations The consensus of the top annotations from all the features of this compound. Null if it was not requested und non-null otherwise. Might contain empty fields if results are not available \link{ConsensusAnnotationsCSI} [optional] +#' @field consensusAnnotationsDeNovo The consensus of the top de novo annotations from all the features of this compound. Null if it was not requested und non-null otherwise. Might contain empty fields if results are not available \link{ConsensusAnnotationsDeNovo} [optional] +#' @field customAnnotations Alternative annotations selected by the User. \link{ConsensusAnnotationsCSI} [optional] +#' @field tags Key: tagName, value: tag named list(\link{Tag}) [optional] #' @importFrom R6 R6Class #' @importFrom jsonlite fromJSON toJSON #' @export @@ -31,6 +32,7 @@ Compound <- R6::R6Class( `consensusAnnotations` = NULL, `consensusAnnotationsDeNovo` = NULL, `customAnnotations` = NULL, + `tags` = NULL, #' @description #' Initialize a new Compound class. @@ -41,11 +43,12 @@ Compound <- R6::R6Class( #' @param rtEndSeconds The merged/consensus retention time end (latest rt) of this compound #' @param neutralMass Neutral mass of this compound. Ion masse minus the mass of the assigned adduct of each feature of this compound should result in the same neutral mass #' @param features List of aligned features (adducts) that belong to the same (this) compound - #' @param consensusAnnotations consensusAnnotations - #' @param consensusAnnotationsDeNovo consensusAnnotationsDeNovo - #' @param customAnnotations customAnnotations + #' @param consensusAnnotations The consensus of the top annotations from all the features of this compound. Null if it was not requested und non-null otherwise. Might contain empty fields if results are not available + #' @param consensusAnnotationsDeNovo The consensus of the top de novo annotations from all the features of this compound. Null if it was not requested und non-null otherwise. Might contain empty fields if results are not available + #' @param customAnnotations Alternative annotations selected by the User. + #' @param tags Key: tagName, value: tag #' @param ... Other optional arguments. - initialize = function(`compoundId` = NULL, `name` = NULL, `rtStartSeconds` = NULL, `rtEndSeconds` = NULL, `neutralMass` = NULL, `features` = NULL, `consensusAnnotations` = NULL, `consensusAnnotationsDeNovo` = NULL, `customAnnotations` = NULL, ...) { + initialize = function(`compoundId` = NULL, `name` = NULL, `rtStartSeconds` = NULL, `rtEndSeconds` = NULL, `neutralMass` = NULL, `features` = NULL, `consensusAnnotations` = NULL, `consensusAnnotationsDeNovo` = NULL, `customAnnotations` = NULL, `tags` = NULL, ...) { if (!is.null(`compoundId`)) { if (!(is.character(`compoundId`) && length(`compoundId`) == 1)) { stop(paste("Error! Invalid data for `compoundId`. Must be a string:", `compoundId`)) @@ -93,6 +96,11 @@ Compound <- R6::R6Class( stopifnot(R6::is.R6(`customAnnotations`)) self$`customAnnotations` <- `customAnnotations` } + if (!is.null(`tags`)) { + stopifnot(is.vector(`tags`), length(`tags`) != 0) + sapply(`tags`, function(x) stopifnot(R6::is.R6(x))) + self$`tags` <- `tags` + } }, #' @description @@ -162,6 +170,10 @@ Compound <- R6::R6Class( CompoundObject[["customAnnotations"]] <- self$`customAnnotations`$toSimpleType() } + if (!is.null(self$`tags`)) { + CompoundObject[["tags"]] <- + lapply(self$`tags`, function(x) x$toSimpleType()) + } return(CompoundObject) }, @@ -205,6 +217,9 @@ Compound <- R6::R6Class( `customannotations_object`$fromJSON(jsonlite::toJSON(this_object$`customAnnotations`, auto_unbox = TRUE, digits = NA, null = 'null')) self$`customAnnotations` <- `customannotations_object` } + if (!is.null(this_object$`tags`)) { + self$`tags` <- ApiClient$new()$deserializeObj(this_object$`tags`, "map(Tag)", loadNamespace("Rsirius")) + } self }, @@ -235,6 +250,7 @@ Compound <- R6::R6Class( self$`consensusAnnotations` <- ConsensusAnnotationsCSI$new()$fromJSON(jsonlite::toJSON(this_object$`consensusAnnotations`, auto_unbox = TRUE, digits = NA, null = 'null')) self$`consensusAnnotationsDeNovo` <- ConsensusAnnotationsDeNovo$new()$fromJSON(jsonlite::toJSON(this_object$`consensusAnnotationsDeNovo`, auto_unbox = TRUE, digits = NA, null = 'null')) self$`customAnnotations` <- ConsensusAnnotationsCSI$new()$fromJSON(jsonlite::toJSON(this_object$`customAnnotations`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`tags` <- ApiClient$new()$deserializeObj(this_object$`tags`, "map(Tag)", loadNamespace("Rsirius")) self }, diff --git a/client-api_r/generated/R/compound_classes.R b/client-api_r/generated/R/compound_classes.R index c80ecdb4..792a4bb9 100644 --- a/client-api_r/generated/R/compound_classes.R +++ b/client-api_r/generated/R/compound_classes.R @@ -7,9 +7,9 @@ #' @title CompoundClasses #' @description CompoundClasses Class #' @format An \code{R6Class} generator object -#' @field npcPathway \link{CompoundClass} [optional] -#' @field npcSuperclass \link{CompoundClass} [optional] -#' @field npcClass \link{CompoundClass} [optional] +#' @field npcPathway Pathway level NPC class with the highest probability \link{CompoundClass} [optional] +#' @field npcSuperclass Superclass level NPC class with the highest probability \link{CompoundClass} [optional] +#' @field npcClass Class level NPC class with the highest probability \link{CompoundClass} [optional] #' @field classyFireLineage Most likely ClassyFire lineage from ordered from least specific to most specific class classyFireLineage.get(classyFireLineage.size() - 1) gives the most specific ClassyFire compound class annotation list(\link{CompoundClass}) [optional] #' @field classyFireAlternatives Alternative ClassyFire classes with high probability that do not fit into the linage list(\link{CompoundClass}) [optional] #' @importFrom R6 R6Class @@ -27,9 +27,9 @@ CompoundClasses <- R6::R6Class( #' @description #' Initialize a new CompoundClasses class. #' - #' @param npcPathway npcPathway - #' @param npcSuperclass npcSuperclass - #' @param npcClass npcClass + #' @param npcPathway Pathway level NPC class with the highest probability + #' @param npcSuperclass Superclass level NPC class with the highest probability + #' @param npcClass Class level NPC class with the highest probability #' @param classyFireLineage Most likely ClassyFire lineage from ordered from least specific to most specific class classyFireLineage.get(classyFireLineage.size() - 1) gives the most specific ClassyFire compound class annotation #' @param classyFireAlternatives Alternative ClassyFire classes with high probability that do not fit into the linage #' @param ... Other optional arguments. diff --git a/client-api_r/generated/R/compound_statistics_api.R b/client-api_r/generated/R/compound_statistics_api.R new file mode 100644 index 00000000..48ff3322 --- /dev/null +++ b/client-api_r/generated/R/compound_statistics_api.R @@ -0,0 +1,576 @@ +#' 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 CompoundStatistics operations +#' @description CompoundStatisticsApi +#' @format An \code{R6Class} generator object +#' @field api_client Handles the client-server communication. +#' +#' @examples +#' \dontrun{ +#' #################### ComputeCompoundFoldChangesExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to compute the fold change in. +#' var_left_group_name <- "left_group_name_example" # character | name of the left tag group. +#' var_right_group_name <- "right_group_name_example" # character | name of the right tag group. +#' var_aggregation <- "AVG" # character | aggregation type. (Optional) +#' var_quantification <- "APEX_INTENSITY" # character | quantification type. (Optional) +#' var_opt_fields <- c("none") # array[character] | job opt fields. (Optional) +#' +#' #[EXPERIMENTAL] Compute the fold change between two groups of runs +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$ComputeCompoundFoldChangesExperimental(var_project_id, var_left_group_name, var_right_group_name, aggregation = var_aggregation, quantification = var_quantification, opt_fields = var_opt_fieldsdata_file = "result.txt") +#' result <- api_instance$compound_statistics_api$ComputeCompoundFoldChangesExperimental(var_project_id, var_left_group_name, var_right_group_name, aggregation = var_aggregation, quantification = var_quantification, opt_fields = var_opt_fields) +#' dput(result) +#' +#' +#' #################### DeleteCompoundFoldChangesExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to delete from. +#' var_left_group_name <- "left_group_name_example" # character | name of the left group. +#' var_right_group_name <- "right_group_name_example" # character | name of the right group. +#' var_aggregation <- "AVG" # character | (Optional) +#' var_quantification <- "APEX_INTENSITY" # character | (Optional) +#' +#' #[EXPERIMENTAL] Delete fold changes +#' api_instance <- rsirius_api$new() +#' +#' api_instance$compound_statistics_api$DeleteCompoundFoldChangesExperimental(var_project_id, var_left_group_name, var_right_group_name, aggregation = var_aggregation, quantification = var_quantification) +#' +#' +#' #################### GetCompoundFoldChangeTableExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to read from. +#' var_aggregation <- "AVG" # character | aggregation type. (Optional) +#' var_quantification <- "APEX_INTENSITY" # character | quantification type. (Optional) +#' +#' #[EXPERIMENTAL] Get table of all fold changes in the project space +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetCompoundFoldChangeTableExperimental(var_project_id, aggregation = var_aggregation, quantification = var_quantificationdata_file = "result.txt") +#' result <- api_instance$compound_statistics_api$GetCompoundFoldChangeTableExperimental(var_project_id, aggregation = var_aggregation, quantification = var_quantification) +#' dput(result) +#' +#' +#' #################### GetFoldChangesByCompoundExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to read from. +#' var_object_id <- "object_id_example" # character | id of the object the fold changes are assigned to. +#' +#' #[EXPERIMENTAL] List all fold changes that are associated with an object +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetFoldChangesByCompoundExperimental(var_project_id, var_object_iddata_file = "result.txt") +#' result <- api_instance$compound_statistics_api$GetFoldChangesByCompoundExperimental(var_project_id, var_object_id) +#' dput(result) +#' +#' +#' } +#' @importFrom R6 R6Class +#' @importFrom base64enc base64encode +#' @export +CompoundStatisticsApi <- R6::R6Class( + "CompoundStatisticsApi", + public = list( + api_client = NULL, + + #' @description + #' Initialize a new CompoundStatisticsApi. + #' + #' @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 + #' [EXPERIMENTAL] Compute the fold change between two groups of runs + #' + #' @param project_id project-space to compute the fold change in. + #' @param left_group_name name of the left tag group. + #' @param right_group_name name of the right tag group. + #' @param aggregation (optional) aggregation type. (default value: "AVG") + #' @param quantification (optional) quantification type. (default value: "APEX_INTENSITY") + #' @param opt_fields (optional) job opt fields. (default value: [progress]) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return Job + ComputeCompoundFoldChangesExperimental = function(project_id, left_group_name, right_group_name, aggregation = "AVG", quantification = "APEX_INTENSITY", opt_fields = list(progress), data_file = NULL, ...) { + local_var_response <- self$ComputeCompoundFoldChangesExperimentalWithHttpInfo(project_id, left_group_name, right_group_name, aggregation, quantification, opt_fields, 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 + #' [EXPERIMENTAL] Compute the fold change between two groups of runs + #' + #' @param project_id project-space to compute the fold change in. + #' @param left_group_name name of the left tag group. + #' @param right_group_name name of the right tag group. + #' @param aggregation (optional) aggregation type. (default value: "AVG") + #' @param quantification (optional) quantification type. (default value: "APEX_INTENSITY") + #' @param opt_fields (optional) job opt fields. (default value: [progress]) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (Job) with additional information such as HTTP status code, headers + ComputeCompoundFoldChangesExperimentalWithHttpInfo = function(project_id, left_group_name, right_group_name, aggregation = "AVG", quantification = "APEX_INTENSITY", opt_fields = list(progress), 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`.") + } + + if (missing(`left_group_name`)) { + stop("Missing required parameter `left_group_name`.") + } + + if (missing(`right_group_name`)) { + stop("Missing required parameter `right_group_name`.") + } + + + + + + + + query_params[["leftGroupName"]] <- `left_group_name` + + query_params[["rightGroupName"]] <- `right_group_name` + + if (!is.null(`aggregation`) && !(`aggregation` %in% c("AVG", "MIN", "MAX"))) { + stop("Invalid value for aggregation when calling CompoundStatisticsApi$ComputeCompoundFoldChangesExperimental. Must be [AVG, MIN, MAX].") + } + query_params[["aggregation"]] <- `aggregation` + + if (!is.null(`quantification`) && !(`quantification` %in% c("APEX_INTENSITY", "AREA_UNDER_CURVE"))) { + stop("Invalid value for quantification when calling CompoundStatisticsApi$ComputeCompoundFoldChangesExperimental. Must be [APEX_INTENSITY, AREA_UNDER_CURVE].") + } + query_params[["quantification"]] <- `quantification` + + # explore + for (query_item in `opt_fields`) { + # validate enum values + if (!is.null(query_item) && !(query_item %in% c("none", "command", "progress", "affectedIds"))) { + stop("Invalid value for opt_fields when calling CompoundStatisticsApi$ComputeCompoundFoldChangesExperimental. Must be [none, command, progress, affectedIds].") + } + query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) + } + + local_var_url_path <- "/api/projects/{projectId}/compounds/statistics/foldchange/compute" + 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 = "PUT", + 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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "Job", 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 + #' [EXPERIMENTAL] Delete fold changes + #' + #' @param project_id project-space to delete from. + #' @param left_group_name name of the left group. + #' @param right_group_name name of the right group. + #' @param aggregation (optional) No description (default value: "AVG") + #' @param quantification (optional) No description (default value: "APEX_INTENSITY") + #' @param ... Other optional arguments + #' + #' @return void + DeleteCompoundFoldChangesExperimental = function(project_id, left_group_name, right_group_name, aggregation = "AVG", quantification = "APEX_INTENSITY", ...) { + local_var_response <- self$DeleteCompoundFoldChangesExperimentalWithHttpInfo(project_id, left_group_name, right_group_name, aggregation, quantification, ...) + 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 + #' [EXPERIMENTAL] Delete fold changes + #' + #' @param project_id project-space to delete from. + #' @param left_group_name name of the left group. + #' @param right_group_name name of the right group. + #' @param aggregation (optional) No description (default value: "AVG") + #' @param quantification (optional) No description (default value: "APEX_INTENSITY") + #' @param ... Other optional arguments + #' + #' @return API response (void) with additional information such as HTTP status code, headers + DeleteCompoundFoldChangesExperimentalWithHttpInfo = function(project_id, left_group_name, right_group_name, aggregation = "AVG", quantification = "APEX_INTENSITY", ...) { + 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`.") + } + + if (missing(`left_group_name`)) { + stop("Missing required parameter `left_group_name`.") + } + + if (missing(`right_group_name`)) { + stop("Missing required parameter `right_group_name`.") + } + + + + + + + query_params[["leftGroupName"]] <- `left_group_name` + + query_params[["rightGroupName"]] <- `right_group_name` + + if (!is.null(`aggregation`) && !(`aggregation` %in% c("AVG", "MIN", "MAX"))) { + stop("Invalid value for aggregation when calling CompoundStatisticsApi$DeleteCompoundFoldChangesExperimental. Must be [AVG, MIN, MAX].") + } + query_params[["aggregation"]] <- `aggregation` + + if (!is.null(`quantification`) && !(`quantification` %in% c("APEX_INTENSITY", "AREA_UNDER_CURVE"))) { + stop("Invalid value for quantification when calling CompoundStatisticsApi$DeleteCompoundFoldChangesExperimental. Must be [APEX_INTENSITY, AREA_UNDER_CURVE].") + } + query_params[["quantification"]] <- `quantification` + + local_var_url_path <- "/api/projects/{projectId}/compounds/statistics/foldchanges" + 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 = "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) { + 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 + } + }, + + #' @description + #' [EXPERIMENTAL] Get table of all fold changes in the project space + #' + #' @param project_id project-space to read from. + #' @param aggregation (optional) aggregation type. (default value: "AVG") + #' @param quantification (optional) quantification type. (default value: "APEX_INTENSITY") + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return StatisticsTable + GetCompoundFoldChangeTableExperimental = function(project_id, aggregation = "AVG", quantification = "APEX_INTENSITY", data_file = NULL, ...) { + local_var_response <- self$GetCompoundFoldChangeTableExperimentalWithHttpInfo(project_id, aggregation, quantification, 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 + #' [EXPERIMENTAL] Get table of all fold changes in the project space + #' + #' @param project_id project-space to read from. + #' @param aggregation (optional) aggregation type. (default value: "AVG") + #' @param quantification (optional) quantification type. (default value: "APEX_INTENSITY") + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (StatisticsTable) with additional information such as HTTP status code, headers + GetCompoundFoldChangeTableExperimentalWithHttpInfo = function(project_id, aggregation = "AVG", quantification = "APEX_INTENSITY", 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`.") + } + + + + + if (!is.null(`aggregation`) && !(`aggregation` %in% c("AVG", "MIN", "MAX"))) { + stop("Invalid value for aggregation when calling CompoundStatisticsApi$GetCompoundFoldChangeTableExperimental. Must be [AVG, MIN, MAX].") + } + query_params[["aggregation"]] <- `aggregation` + + if (!is.null(`quantification`) && !(`quantification` %in% c("APEX_INTENSITY", "AREA_UNDER_CURVE"))) { + stop("Invalid value for quantification when calling CompoundStatisticsApi$GetCompoundFoldChangeTableExperimental. Must be [APEX_INTENSITY, AREA_UNDER_CURVE].") + } + query_params[["quantification"]] <- `quantification` + + local_var_url_path <- "/api/projects/{projectId}/compounds/statistics/foldchanges/stats-table" + 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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "StatisticsTable", 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 + #' [EXPERIMENTAL] List all fold changes that are associated with an object + #' + #' @param project_id project-space to read from. + #' @param object_id id of the object the fold changes are assigned to. + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return array[FoldChange] + GetFoldChangesByCompoundExperimental = function(project_id, object_id, data_file = NULL, ...) { + local_var_response <- self$GetFoldChangesByCompoundExperimentalWithHttpInfo(project_id, object_id, 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 + #' [EXPERIMENTAL] List all fold changes that are associated with an object + #' + #' @param project_id project-space to read from. + #' @param object_id id of the object the fold changes are assigned to. + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (array[FoldChange]) with additional information such as HTTP status code, headers + GetFoldChangesByCompoundExperimentalWithHttpInfo = function(project_id, object_id, 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`.") + } + + if (missing(`object_id`)) { + stop("Missing required parameter `object_id`.") + } + + + + local_var_url_path <- "/api/projects/{projectId}/compounds/statistics/foldchanges/{objectId}" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`object_id`)) { + local_var_url_path <- gsub("\\{objectId\\}", URLencode(as.character(`object_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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "array[FoldChange]", 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 + } + } + ) +) diff --git a/client-api_r/generated/R/compounds_api.R b/client-api_r/generated/R/compounds_api.R index c5d018a1..14fff211 100644 --- a/client-api_r/generated/R/compounds_api.R +++ b/client-api_r/generated/R/compounds_api.R @@ -17,7 +17,7 @@ #' #' library(Rsirius) #' var_project_id <- "project_id_example" # character | project-space to import into. -#' var_compound_import <- c(CompoundImport$new(c(FeatureImport$new(123, 123, "name_example", "externalFeatureId_example", c("detectedAdducts_example"), 123, 123, 123, "NOT_APPLICABLE", BasicSpectrum$new(c(SimplePeak$new(123, 123)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, 123), c(BasicSpectrum$new(c(SimplePeak$new(..., ...)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, 123)), c(BasicSpectrum$new(c(SimplePeak$new(..., ...)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, 123)))), "name_example")) # array[CompoundImport] | the compound data to be imported +#' var_compound_import <- c(CompoundImport$new(c(FeatureImport$new(123, 123, "name_example", "externalFeatureId_example", c("detectedAdducts_example"), 123, 123, 123, "NOT_APPLICABLE", BasicSpectrum$new("cosineQuery_example", c(SimplePeak$new(123, 123)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, SimplePeak$new(123, 123), 123, 123, 123, 123, 123), c(BasicSpectrum$new("cosineQuery_example", c(SimplePeak$new(..., ...)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, SimplePeak$new(123, 123), 123, 123, 123, 123, 123)), c(BasicSpectrum$new("cosineQuery_example", c(SimplePeak$new(..., ...)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, SimplePeak$new(123, 123), 123, 123, 123, 123, 123)))), "name_example")) # array[CompoundImport] | the compound data to be imported #' var_profile <- "profile_example" # character | profile describing the instrument used to measure the data. Used to merge spectra. (Optional) #' var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' to override defaults. (Optional) #' var_opt_fields_features <- c("none") # array[character] | set of optional fields of the nested features to be included. Use 'none' to override defaults. (Optional) @@ -31,6 +31,22 @@ #' dput(result) #' #' +#' #################### AddTagsToCompoundExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to add to. +#' var_compound_id <- "compound_id_example" # character | compound (group of ion identities) to add tags to. +#' var_tag <- c(Tag$new("tagName_example", TODO)) # array[Tag] | tags to add. +#' +#' #[EXPERIMENTAL] Tags with the same name will be overwritten +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$AddTagsToCompoundExperimental(var_project_id, var_compound_id, var_tagdata_file = "result.txt") +#' result <- api_instance$compounds_api$AddTagsToCompoundExperimental(var_project_id, var_compound_id, var_tag) +#' dput(result) +#' +#' #' #################### DeleteCompound #################### #' #' library(Rsirius) @@ -48,6 +64,7 @@ #' library(Rsirius) #' var_project_id <- "project_id_example" # character | project-space to read from. #' var_compound_id <- "compound_id_example" # character | identifier of the compound (group of ion identities) to access. +#' var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (Optional) #' var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) #' var_opt_fields_features <- c("none") # array[character] | (Optional) #' @@ -55,8 +72,39 @@ #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$GetCompound(var_project_id, var_compound_id, opt_fields = var_opt_fields, opt_fields_features = var_opt_fields_featuresdata_file = "result.txt") -#' result <- api_instance$compounds_api$GetCompound(var_project_id, var_compound_id, opt_fields = var_opt_fields, opt_fields_features = var_opt_fields_features) +#' # result <- api_instance$GetCompound(var_project_id, var_compound_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields, opt_fields_features = var_opt_fields_featuresdata_file = "result.txt") +#' result <- api_instance$compounds_api$GetCompound(var_project_id, var_compound_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields, opt_fields_features = var_opt_fields_features) +#' dput(result) +#' +#' +#' #################### GetCompoundQuantTableExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to read from. +#' var_type <- "APEX_HEIGHT" # character | quantification type. (Optional) +#' +#' #[EXPERIMENTAL] Returns the full quantification table of compounds +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetCompoundQuantTableExperimental(var_project_id, type = var_typedata_file = "result.txt") +#' result <- api_instance$compounds_api$GetCompoundQuantTableExperimental(var_project_id, type = var_type) +#' dput(result) +#' +#' +#' #################### GetCompoundQuantTableRowExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to read from. +#' var_compound_id <- "compound_id_example" # character | compound which should be read out +#' var_type <- "APEX_HEIGHT" # character | quantification type. (Optional) +#' +#' #[EXPERIMENTAL] Returns a single quantification table row for the given compound +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetCompoundQuantTableRowExperimental(var_project_id, var_compound_id, type = var_typedata_file = "result.txt") +#' result <- api_instance$compounds_api$GetCompoundQuantTableRowExperimental(var_project_id, var_compound_id, type = var_type) #' dput(result) #' #' @@ -67,7 +115,7 @@ #' var_compound_id <- "compound_id_example" # character | compound which intensities should be read out #' var_feature_id <- "" # character | (Optional) #' -#' #EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +#' #[EXPERIMENTAL] Returns the traces of the given compound #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. @@ -80,6 +128,7 @@ #' #' library(Rsirius) #' var_project_id <- "project_id_example" # character | project-space to read from. +#' var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (Optional) #' var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) #' var_opt_fields_features <- c("none") # array[character] | (Optional) #' @@ -87,8 +136,46 @@ #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$GetCompounds(var_project_id, opt_fields = var_opt_fields, opt_fields_features = var_opt_fields_featuresdata_file = "result.txt") -#' result <- api_instance$compounds_api$GetCompounds(var_project_id, opt_fields = var_opt_fields, opt_fields_features = var_opt_fields_features) +#' # result <- api_instance$GetCompounds(var_project_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields, opt_fields_features = var_opt_fields_featuresdata_file = "result.txt") +#' result <- api_instance$compounds_api$GetCompounds(var_project_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields, opt_fields_features = var_opt_fields_features) +#' dput(result) +#' +#' +#' #################### GetCompoundsByGroupExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to delete from. +#' var_group_name <- "group_name_example" # character | tag group name. +#' var_page <- 0 # integer | Zero-based page index (0..N) (Optional) +#' var_size <- 20 # integer | The size of the page to be returned (Optional) +#' var_sort <- c("inner_example") # array[character] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (Optional) +#' var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) +#' +#' #[EXPERIMENTAL] Get compounds (group of ion identities) by tag group +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetCompoundsByGroupExperimental(var_project_id, var_group_name, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fieldsdata_file = "result.txt") +#' result <- api_instance$compounds_api$GetCompoundsByGroupExperimental(var_project_id, var_group_name, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fields) +#' dput(result) +#' +#' +#' #################### GetCompoundsByTagExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project space to get compounds (group of ion identities) from. +#' var_filter <- "" # character | tag filter. (Optional) +#' var_page <- 0 # integer | Zero-based page index (0..N) (Optional) +#' var_size <- 20 # integer | The size of the page to be returned (Optional) +#' var_sort <- c("inner_example") # array[character] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (Optional) +#' var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) +#' +#' #[EXPERIMENTAL] Get compounds (group of ion identities) by tag +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetCompoundsByTagExperimental(var_project_id, filter = var_filter, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fieldsdata_file = "result.txt") +#' result <- api_instance$compounds_api$GetCompoundsByTagExperimental(var_project_id, filter = var_filter, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fields) #' dput(result) #' #' @@ -99,6 +186,7 @@ #' var_page <- 0 # integer | Zero-based page index (0..N) (Optional) #' var_size <- 20 # integer | The size of the page to be returned (Optional) #' var_sort <- c("inner_example") # array[character] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (Optional) +#' var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (Optional) #' var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) #' var_opt_fields_features <- c("none") # array[character] | (Optional) #' @@ -106,11 +194,39 @@ #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$GetCompoundsPaged(var_project_id, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fields, opt_fields_features = var_opt_fields_featuresdata_file = "result.txt") -#' result <- api_instance$compounds_api$GetCompoundsPaged(var_project_id, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fields, opt_fields_features = var_opt_fields_features) +#' # result <- api_instance$GetCompoundsPaged(var_project_id, page = var_page, size = var_size, sort = var_sort, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields, opt_fields_features = var_opt_fields_featuresdata_file = "result.txt") +#' result <- api_instance$compounds_api$GetCompoundsPaged(var_project_id, page = var_page, size = var_size, sort = var_sort, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields, opt_fields_features = var_opt_fields_features) +#' dput(result) +#' +#' +#' #################### GetTagsForCompoundExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to get from. +#' var_object_id <- "object_id_example" # character | CompoundId to get tags for. +#' +#' #[EXPERIMENTAL] Get all tags associated with this Compound +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetTagsForCompoundExperimental(var_project_id, var_object_iddata_file = "result.txt") +#' result <- api_instance$compounds_api$GetTagsForCompoundExperimental(var_project_id, var_object_id) #' dput(result) #' #' +#' #################### RemoveTagFromCompoundExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to delete from. +#' var_compound_id <- "compound_id_example" # character | compound (group of ion identities) to delete tag from. +#' var_tag_name <- "tag_name_example" # character | name of the tag to delete. +#' +#' #[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space +#' api_instance <- rsirius_api$new() +#' +#' api_instance$compounds_api$RemoveTagFromCompoundExperimental(var_project_id, var_compound_id, var_tag_name) +#' +#' #' } #' @importFrom R6 R6Class #' @importFrom base64enc base64encode @@ -138,13 +254,13 @@ CompoundsApi <- R6::R6Class( #' @param project_id project-space to import into. #' @param compound_import the compound data to be imported #' @param profile (optional) profile describing the instrument used to measure the data. Used to merge spectra. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' to override defaults. (default value: ["none"]) - #' @param opt_fields_features (optional) set of optional fields of the nested features to be included. Use 'none' to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' to override defaults. (default value: [none]) + #' @param opt_fields_features (optional) set of optional fields of the nested features to be included. Use 'none' to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return array[Compound] - AddCompounds = function(project_id, compound_import, profile = NULL, opt_fields = list("none"), opt_fields_features = list("none"), data_file = NULL, ...) { + AddCompounds = function(project_id, compound_import, profile = NULL, opt_fields = list(NULL), opt_fields_features = list(NULL), data_file = NULL, ...) { local_var_response <- self$AddCompoundsWithHttpInfo(project_id, compound_import, profile, opt_fields, opt_fields_features, data_file = data_file, ...) if (local_var_response$status_code >= 200 && local_var_response$status_code <= 299) { local_var_response$content @@ -163,13 +279,13 @@ CompoundsApi <- R6::R6Class( #' @param project_id project-space to import into. #' @param compound_import the compound data to be imported #' @param profile (optional) profile describing the instrument used to measure the data. Used to merge spectra. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' to override defaults. (default value: ["none"]) - #' @param opt_fields_features (optional) set of optional fields of the nested features to be included. Use 'none' to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' to override defaults. (default value: [none]) + #' @param opt_fields_features (optional) set of optional fields of the nested features to be included. Use 'none' to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (array[Compound]) with additional information such as HTTP status code, headers - AddCompoundsWithHttpInfo = function(project_id, compound_import, profile = NULL, opt_fields = list("none"), opt_fields_features = list("none"), data_file = NULL, ...) { + AddCompoundsWithHttpInfo = function(project_id, compound_import, profile = NULL, opt_fields = list(NULL), opt_fields_features = list(NULL), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -200,8 +316,8 @@ CompoundsApi <- R6::R6Class( # explore for (query_item in `opt_fields`) { # validate enum values - if (!is.null(query_item) && !(query_item %in% c("none", "consensusAnnotations", "consensusAnnotationsDeNovo", "customAnnotations"))) { - stop("Invalid value for opt_fields when calling CompoundsApi$AddCompounds. Must be [none, consensusAnnotations, consensusAnnotationsDeNovo, customAnnotations].") + if (!is.null(query_item) && !(query_item %in% c("none", "consensusAnnotations", "consensusAnnotationsDeNovo", "customAnnotations", "tags"))) { + stop("Invalid value for opt_fields when calling CompoundsApi$AddCompounds. Must be [none, consensusAnnotations, consensusAnnotationsDeNovo, customAnnotations, tags].") } query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) } @@ -209,8 +325,8 @@ CompoundsApi <- R6::R6Class( # explore for (query_item in `opt_fields_features`) { # validate enum values - if (!is.null(query_item) && !(query_item %in% c("none", "msData", "topAnnotations", "topAnnotationsDeNovo", "computedTools"))) { - stop("Invalid value for opt_fields_features when calling CompoundsApi$AddCompounds. Must be [none, msData, topAnnotations, topAnnotationsDeNovo, computedTools].") + if (!is.null(query_item) && !(query_item %in% c("none", "msData", "topAnnotationsSummary", "topAnnotations", "topAnnotationsDeNovo", "computedTools", "tags"))) { + stop("Invalid value for opt_fields_features when calling CompoundsApi$AddCompounds. Must be [none, msData, topAnnotationsSummary, topAnnotations, topAnnotationsDeNovo, computedTools, tags].") } query_params[["optFieldsFeatures"]] <- c(query_params[["optFieldsFeatures"]], list(`optFieldsFeatures` = query_item)) } @@ -275,6 +391,128 @@ CompoundsApi <- R6::R6Class( } }, + #' @description + #' [EXPERIMENTAL] Tags with the same name will be overwritten + #' + #' @param project_id project-space to add to. + #' @param compound_id compound (group of ion identities) to add tags to. + #' @param tag tags to add. + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return array[Tag] + AddTagsToCompoundExperimental = function(project_id, compound_id, tag, data_file = NULL, ...) { + local_var_response <- self$AddTagsToCompoundExperimentalWithHttpInfo(project_id, compound_id, tag, 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 + #' [EXPERIMENTAL] Tags with the same name will be overwritten + #' + #' @param project_id project-space to add to. + #' @param compound_id compound (group of ion identities) to add tags to. + #' @param tag tags to add. + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (array[Tag]) with additional information such as HTTP status code, headers + AddTagsToCompoundExperimentalWithHttpInfo = function(project_id, compound_id, tag, 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`.") + } + + if (missing(`compound_id`)) { + stop("Missing required parameter `compound_id`.") + } + + if (missing(`tag`)) { + stop("Missing required parameter `tag`.") + } + + + + + if (!is.null(`tag`)) { + body.items <- paste(unlist(lapply(`tag`, function(param) { + param$toJSONString() + })), collapse = ",") + local_var_body <- paste0("[", body.items, "]") + } else { + body <- NULL + } + + local_var_url_path <- "/api/projects/{projectId}/compounds/tags/{compoundId}" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`compound_id`)) { + local_var_url_path <- gsub("\\{compoundId\\}", URLencode(as.character(`compound_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("application/json") + + local_var_resp <- self$api_client$CallApi(url = paste0(self$api_client$base_path, local_var_url_path), + method = "PUT", + 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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "array[Tag]", 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 #' Delete compound (group of ion identities) with the given identifier (and the included features) from the specified project-space. #' @@ -373,14 +611,15 @@ CompoundsApi <- R6::R6Class( #' #' @param project_id project-space to read from. #' @param compound_id identifier of the compound (group of ion identities) to access. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) - #' @param opt_fields_features (optional) No description (default value: ["none"]) + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) + #' @param opt_fields_features (optional) No description (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return Compound - GetCompound = function(project_id, compound_id, opt_fields = list("none"), opt_fields_features = list("none"), data_file = NULL, ...) { - local_var_response <- self$GetCompoundWithHttpInfo(project_id, compound_id, opt_fields, opt_fields_features, data_file = data_file, ...) + GetCompound = function(project_id, compound_id, ms_data_search_prepared = FALSE, opt_fields = list(NULL), opt_fields_features = list(NULL), data_file = NULL, ...) { + local_var_response <- self$GetCompoundWithHttpInfo(project_id, compound_id, ms_data_search_prepared, opt_fields, opt_fields_features, 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) { @@ -397,13 +636,14 @@ CompoundsApi <- R6::R6Class( #' #' @param project_id project-space to read from. #' @param compound_id identifier of the compound (group of ion identities) to access. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) - #' @param opt_fields_features (optional) No description (default value: ["none"]) + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) + #' @param opt_fields_features (optional) No description (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (Compound) with additional information such as HTTP status code, headers - GetCompoundWithHttpInfo = function(project_id, compound_id, opt_fields = list("none"), opt_fields_features = list("none"), data_file = NULL, ...) { + GetCompoundWithHttpInfo = function(project_id, compound_id, ms_data_search_prepared = FALSE, opt_fields = list(NULL), opt_fields_features = list(NULL), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -425,11 +665,14 @@ CompoundsApi <- R6::R6Class( + + query_params[["msDataSearchPrepared"]] <- `ms_data_search_prepared` + # explore for (query_item in `opt_fields`) { # validate enum values - if (!is.null(query_item) && !(query_item %in% c("none", "consensusAnnotations", "consensusAnnotationsDeNovo", "customAnnotations"))) { - stop("Invalid value for opt_fields when calling CompoundsApi$GetCompound. Must be [none, consensusAnnotations, consensusAnnotationsDeNovo, customAnnotations].") + if (!is.null(query_item) && !(query_item %in% c("none", "consensusAnnotations", "consensusAnnotationsDeNovo", "customAnnotations", "tags"))) { + stop("Invalid value for opt_fields when calling CompoundsApi$GetCompound. Must be [none, consensusAnnotations, consensusAnnotationsDeNovo, customAnnotations, tags].") } query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) } @@ -437,8 +680,8 @@ CompoundsApi <- R6::R6Class( # explore for (query_item in `opt_fields_features`) { # validate enum values - if (!is.null(query_item) && !(query_item %in% c("none", "msData", "topAnnotations", "topAnnotationsDeNovo", "computedTools"))) { - stop("Invalid value for opt_fields_features when calling CompoundsApi$GetCompound. Must be [none, msData, topAnnotations, topAnnotationsDeNovo, computedTools].") + if (!is.null(query_item) && !(query_item %in% c("none", "msData", "topAnnotationsSummary", "topAnnotations", "topAnnotationsDeNovo", "computedTools", "tags"))) { + stop("Invalid value for opt_fields_features when calling CompoundsApi$GetCompound. Must be [none, msData, topAnnotationsSummary, topAnnotations, topAnnotationsDeNovo, computedTools, tags].") } query_params[["optFieldsFeatures"]] <- c(query_params[["optFieldsFeatures"]], list(`optFieldsFeatures` = query_item)) } @@ -499,17 +742,16 @@ CompoundsApi <- R6::R6Class( }, #' @description - #' EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + #' [EXPERIMENTAL] Returns the full quantification table of compounds #' #' @param project_id project-space to read from. - #' @param compound_id compound which intensities should be read out - #' @param feature_id (optional) No description (default value: "") + #' @param type (optional) quantification type. (default value: "APEX_HEIGHT") #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' - #' @return TraceSetExperimental - GetCompoundTracesExperimental = function(project_id, compound_id, feature_id = "", data_file = NULL, ...) { - local_var_response <- self$GetCompoundTracesExperimentalWithHttpInfo(project_id, compound_id, feature_id, data_file = data_file, ...) + #' @return QuantTableExperimental + GetCompoundQuantTableExperimental = function(project_id, type = "APEX_HEIGHT", data_file = NULL, ...) { + local_var_response <- self$GetCompoundQuantTableExperimentalWithHttpInfo(project_id, type, 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) { @@ -522,16 +764,15 @@ CompoundsApi <- R6::R6Class( }, #' @description - #' EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + #' [EXPERIMENTAL] Returns the full quantification table of compounds #' #' @param project_id project-space to read from. - #' @param compound_id compound which intensities should be read out - #' @param feature_id (optional) No description (default value: "") + #' @param type (optional) quantification type. (default value: "APEX_HEIGHT") #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' - #' @return API response (TraceSetExperimental) with additional information such as HTTP status code, headers - GetCompoundTracesExperimentalWithHttpInfo = function(project_id, compound_id, feature_id = "", data_file = NULL, ...) { + #' @return API response (QuantTableExperimental) with additional information such as HTTP status code, headers + GetCompoundQuantTableExperimentalWithHttpInfo = function(project_id, type = "APEX_HEIGHT", data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -545,24 +786,18 @@ CompoundsApi <- R6::R6Class( stop("Missing required parameter `project_id`.") } - if (missing(`compound_id`)) { - stop("Missing required parameter `compound_id`.") - } - + if (!is.null(`type`) && !(`type` %in% c("APEX_INTENSITY", "AREA_UNDER_CURVE"))) { + stop("Invalid value for type when calling CompoundsApi$GetCompoundQuantTableExperimental. Must be [APEX_INTENSITY, AREA_UNDER_CURVE].") + } + query_params[["type"]] <- `type` - query_params[["featureId"]] <- `feature_id` - - local_var_url_path <- "/api/projects/{projectId}/compounds/{compoundId}/traces" + local_var_url_path <- "/api/projects/{projectId}/compounds/quant-table" if (!missing(`project_id`)) { local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) } - if (!missing(`compound_id`)) { - local_var_url_path <- gsub("\\{compoundId\\}", URLencode(as.character(`compound_id`), reserved = TRUE), local_var_url_path) - } - # The Accept request HTTP header local_var_accepts <- list("application/json") @@ -590,7 +825,7 @@ CompoundsApi <- R6::R6Class( } deserialized_resp_obj <- tryCatch( - self$api_client$deserialize(local_var_resp$response_as_text(), "TraceSetExperimental", loadNamespace("Rsirius")), + self$api_client$deserialize(local_var_resp$response_as_text(), "QuantTableExperimental", loadNamespace("Rsirius")), error = function(e) { stop("Failed to deserialize response") } @@ -610,17 +845,17 @@ CompoundsApi <- R6::R6Class( }, #' @description - #' List of all available compounds (group of ion identities) in the given project-space. + #' [EXPERIMENTAL] Returns a single quantification table row for the given compound #' #' @param project_id project-space to read from. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) - #' @param opt_fields_features (optional) No description (default value: ["none"]) + #' @param compound_id compound which should be read out + #' @param type (optional) quantification type. (default value: "APEX_HEIGHT") #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' - #' @return array[Compound] - GetCompounds = function(project_id, opt_fields = list("none"), opt_fields_features = list("none"), data_file = NULL, ...) { - local_var_response <- self$GetCompoundsWithHttpInfo(project_id, opt_fields, opt_fields_features, data_file = data_file, ...) + #' @return QuantTableExperimental + GetCompoundQuantTableRowExperimental = function(project_id, compound_id, type = "APEX_HEIGHT", data_file = NULL, ...) { + local_var_response <- self$GetCompoundQuantTableRowExperimentalWithHttpInfo(project_id, compound_id, type, 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) { @@ -633,16 +868,16 @@ CompoundsApi <- R6::R6Class( }, #' @description - #' List of all available compounds (group of ion identities) in the given project-space. + #' [EXPERIMENTAL] Returns a single quantification table row for the given compound #' #' @param project_id project-space to read from. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) - #' @param opt_fields_features (optional) No description (default value: ["none"]) + #' @param compound_id compound which should be read out + #' @param type (optional) quantification type. (default value: "APEX_HEIGHT") #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' - #' @return API response (array[Compound]) with additional information such as HTTP status code, headers - GetCompoundsWithHttpInfo = function(project_id, opt_fields = list("none"), opt_fields_features = list("none"), data_file = NULL, ...) { + #' @return API response (QuantTableExperimental) with additional information such as HTTP status code, headers + GetCompoundQuantTableRowExperimentalWithHttpInfo = function(project_id, compound_id, type = "APEX_HEIGHT", data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -656,32 +891,27 @@ CompoundsApi <- R6::R6Class( stop("Missing required parameter `project_id`.") } + if (missing(`compound_id`)) { + stop("Missing required parameter `compound_id`.") + } - # explore - for (query_item in `opt_fields`) { - # validate enum values - if (!is.null(query_item) && !(query_item %in% c("none", "consensusAnnotations", "consensusAnnotationsDeNovo", "customAnnotations"))) { - stop("Invalid value for opt_fields when calling CompoundsApi$GetCompounds. Must be [none, consensusAnnotations, consensusAnnotationsDeNovo, customAnnotations].") - } - query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) - } - # explore - for (query_item in `opt_fields_features`) { - # validate enum values - if (!is.null(query_item) && !(query_item %in% c("none", "msData", "topAnnotations", "topAnnotationsDeNovo", "computedTools"))) { - stop("Invalid value for opt_fields_features when calling CompoundsApi$GetCompounds. Must be [none, msData, topAnnotations, topAnnotationsDeNovo, computedTools].") - } - query_params[["optFieldsFeatures"]] <- c(query_params[["optFieldsFeatures"]], list(`optFieldsFeatures` = query_item)) + if (!is.null(`type`) && !(`type` %in% c("APEX_INTENSITY", "AREA_UNDER_CURVE"))) { + stop("Invalid value for type when calling CompoundsApi$GetCompoundQuantTableRowExperimental. Must be [APEX_INTENSITY, AREA_UNDER_CURVE].") } + query_params[["type"]] <- `type` - local_var_url_path <- "/api/projects/{projectId}/compounds" + local_var_url_path <- "/api/projects/{projectId}/compounds/{compoundId}/quant-table-row" if (!missing(`project_id`)) { local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) } + if (!missing(`compound_id`)) { + local_var_url_path <- gsub("\\{compoundId\\}", URLencode(as.character(`compound_id`), reserved = TRUE), local_var_url_path) + } + # The Accept request HTTP header local_var_accepts <- list("application/json") @@ -709,7 +939,7 @@ CompoundsApi <- R6::R6Class( } deserialized_resp_obj <- tryCatch( - self$api_client$deserialize(local_var_resp$response_as_text(), "array[Compound]", loadNamespace("Rsirius")), + self$api_client$deserialize(local_var_resp$response_as_text(), "QuantTableExperimental", loadNamespace("Rsirius")), error = function(e) { stop("Failed to deserialize response") } @@ -729,20 +959,17 @@ CompoundsApi <- R6::R6Class( }, #' @description - #' Page of available compounds (group of ion identities) in the given project-space. + #' [EXPERIMENTAL] Returns the traces of the given compound #' #' @param project_id project-space to read from. - #' @param page (optional) Zero-based page index (0..N) (default value: 0) - #' @param size (optional) The size of the page to be returned (default value: 20) - #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) - #' @param opt_fields_features (optional) No description (default value: ["none"]) + #' @param compound_id compound which intensities should be read out + #' @param feature_id (optional) No description (default value: "") #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' - #' @return PagedModelCompound - GetCompoundsPaged = function(project_id, page = 0, size = 20, sort = NULL, opt_fields = list("none"), opt_fields_features = list("none"), data_file = NULL, ...) { - local_var_response <- self$GetCompoundsPagedWithHttpInfo(project_id, page, size, sort, opt_fields, opt_fields_features, data_file = data_file, ...) + #' @return TraceSetExperimental + GetCompoundTracesExperimental = function(project_id, compound_id, feature_id = "", data_file = NULL, ...) { + local_var_response <- self$GetCompoundTracesExperimentalWithHttpInfo(project_id, compound_id, feature_id, 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) { @@ -755,19 +982,16 @@ CompoundsApi <- R6::R6Class( }, #' @description - #' Page of available compounds (group of ion identities) in the given project-space. + #' [EXPERIMENTAL] Returns the traces of the given compound #' #' @param project_id project-space to read from. - #' @param page (optional) Zero-based page index (0..N) (default value: 0) - #' @param size (optional) The size of the page to be returned (default value: 20) - #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) - #' @param opt_fields_features (optional) No description (default value: ["none"]) + #' @param compound_id compound which intensities should be read out + #' @param feature_id (optional) No description (default value: "") #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' - #' @return API response (PagedModelCompound) with additional information such as HTTP status code, headers - GetCompoundsPagedWithHttpInfo = function(project_id, page = 0, size = 20, sort = NULL, opt_fields = list("none"), opt_fields_features = list("none"), data_file = NULL, ...) { + #' @return API response (TraceSetExperimental) with additional information such as HTTP status code, headers + GetCompoundTracesExperimentalWithHttpInfo = function(project_id, compound_id, feature_id = "", data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -781,8 +1005,527 @@ CompoundsApi <- R6::R6Class( stop("Missing required parameter `project_id`.") } - - if (`page` < 0) { + if (missing(`compound_id`)) { + stop("Missing required parameter `compound_id`.") + } + + + + + query_params[["featureId"]] <- `feature_id` + + local_var_url_path <- "/api/projects/{projectId}/compounds/{compoundId}/traces" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`compound_id`)) { + local_var_url_path <- gsub("\\{compoundId\\}", URLencode(as.character(`compound_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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "TraceSetExperimental", 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 + #' List of all available compounds (group of ion identities) in the given project-space. + #' + #' @param project_id project-space to read from. + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param opt_fields_features (optional) No description (default value: ["none"]) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return array[Compound] + GetCompounds = function(project_id, ms_data_search_prepared = FALSE, opt_fields = list("none"), opt_fields_features = list("none"), data_file = NULL, ...) { + local_var_response <- self$GetCompoundsWithHttpInfo(project_id, ms_data_search_prepared, opt_fields, opt_fields_features, 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 + #' List of all available compounds (group of ion identities) in the given project-space. + #' + #' @param project_id project-space to read from. + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param opt_fields_features (optional) No description (default value: ["none"]) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (array[Compound]) with additional information such as HTTP status code, headers + GetCompoundsWithHttpInfo = function(project_id, ms_data_search_prepared = FALSE, opt_fields = list("none"), opt_fields_features = list("none"), 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[["msDataSearchPrepared"]] <- `ms_data_search_prepared` + + # explore + for (query_item in `opt_fields`) { + # validate enum values + if (!is.null(query_item) && !(query_item %in% c("none", "consensusAnnotations", "consensusAnnotationsDeNovo", "customAnnotations", "tags"))) { + stop("Invalid value for opt_fields when calling CompoundsApi$GetCompounds. Must be [none, consensusAnnotations, consensusAnnotationsDeNovo, customAnnotations, tags].") + } + query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) + } + + # explore + for (query_item in `opt_fields_features`) { + # validate enum values + if (!is.null(query_item) && !(query_item %in% c("none", "msData", "topAnnotationsSummary", "topAnnotations", "topAnnotationsDeNovo", "computedTools", "tags"))) { + stop("Invalid value for opt_fields_features when calling CompoundsApi$GetCompounds. Must be [none, msData, topAnnotationsSummary, topAnnotations, topAnnotationsDeNovo, computedTools, tags].") + } + query_params[["optFieldsFeatures"]] <- c(query_params[["optFieldsFeatures"]], list(`optFieldsFeatures` = query_item)) + } + + local_var_url_path <- "/api/projects/{projectId}/compounds" + 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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "array[Compound]", 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 + #' [EXPERIMENTAL] Get compounds (group of ion identities) by tag group + #' + #' @param project_id project-space to delete from. + #' @param group_name tag group name. + #' @param page (optional) Zero-based page index (0..N) (default value: 0) + #' @param size (optional) The size of the page to be returned (default value: 20) + #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return PagedModelCompound + GetCompoundsByGroupExperimental = function(project_id, group_name, page = 0, size = 20, sort = NULL, opt_fields = list(NULL), data_file = NULL, ...) { + local_var_response <- self$GetCompoundsByGroupExperimentalWithHttpInfo(project_id, group_name, page, size, sort, opt_fields, 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 + #' [EXPERIMENTAL] Get compounds (group of ion identities) by tag group + #' + #' @param project_id project-space to delete from. + #' @param group_name tag group name. + #' @param page (optional) Zero-based page index (0..N) (default value: 0) + #' @param size (optional) The size of the page to be returned (default value: 20) + #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (PagedModelCompound) with additional information such as HTTP status code, headers + GetCompoundsByGroupExperimentalWithHttpInfo = function(project_id, group_name, page = 0, size = 20, sort = NULL, opt_fields = list(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`.") + } + + if (missing(`group_name`)) { + stop("Missing required parameter `group_name`.") + } + + + + if (`page` < 0) { + stop("Invalid value for `page` when calling CompoundsApi$GetCompoundsByGroupExperimental, must be bigger than or equal to 0.") + } + + if (`size` < 1) { + stop("Invalid value for `size` when calling CompoundsApi$GetCompoundsByGroupExperimental, must be bigger than or equal to 1.") + } + + + + query_params[["groupName"]] <- `group_name` + + query_params[["page"]] <- `page` + + query_params[["size"]] <- `size` + + # explore + for (query_item in `sort`) { + query_params[["sort"]] <- c(query_params[["sort"]], list(`sort` = query_item)) + } + + # explore + for (query_item in `opt_fields`) { + # validate enum values + if (!is.null(query_item) && !(query_item %in% c("none", "consensusAnnotations", "consensusAnnotationsDeNovo", "customAnnotations", "tags"))) { + stop("Invalid value for opt_fields when calling CompoundsApi$GetCompoundsByGroupExperimental. Must be [none, consensusAnnotations, consensusAnnotationsDeNovo, customAnnotations, tags].") + } + query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) + } + + local_var_url_path <- "/api/projects/{projectId}/compounds/grouped" + 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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "PagedModelCompound", 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 + #' [EXPERIMENTAL] Get compounds (group of ion identities) by tag + #' + #' @param project_id project space to get compounds (group of ion identities) from. + #' @param filter (optional) tag filter. (default value: "") + #' @param page (optional) Zero-based page index (0..N) (default value: 0) + #' @param size (optional) The size of the page to be returned (default value: 20) + #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: []) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return PagedModelCompound + GetCompoundsByTagExperimental = function(project_id, filter = "", page = 0, size = 20, sort = NULL, opt_fields = list(), data_file = NULL, ...) { + local_var_response <- self$GetCompoundsByTagExperimentalWithHttpInfo(project_id, filter, page, size, sort, opt_fields, 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 + #' [EXPERIMENTAL] Get compounds (group of ion identities) by tag + #' + #' @param project_id project space to get compounds (group of ion identities) from. + #' @param filter (optional) tag filter. (default value: "") + #' @param page (optional) Zero-based page index (0..N) (default value: 0) + #' @param size (optional) The size of the page to be returned (default value: 20) + #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: []) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (PagedModelCompound) with additional information such as HTTP status code, headers + GetCompoundsByTagExperimentalWithHttpInfo = function(project_id, filter = "", page = 0, size = 20, sort = NULL, opt_fields = list(), 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`.") + } + + + + if (`page` < 0) { + stop("Invalid value for `page` when calling CompoundsApi$GetCompoundsByTagExperimental, must be bigger than or equal to 0.") + } + + if (`size` < 1) { + stop("Invalid value for `size` when calling CompoundsApi$GetCompoundsByTagExperimental, must be bigger than or equal to 1.") + } + + + + query_params[["filter"]] <- `filter` + + query_params[["page"]] <- `page` + + query_params[["size"]] <- `size` + + # explore + for (query_item in `sort`) { + query_params[["sort"]] <- c(query_params[["sort"]], list(`sort` = query_item)) + } + + # explore + for (query_item in `opt_fields`) { + # validate enum values + if (!is.null(query_item) && !(query_item %in% c("none", "consensusAnnotations", "consensusAnnotationsDeNovo", "customAnnotations", "tags"))) { + stop("Invalid value for opt_fields when calling CompoundsApi$GetCompoundsByTagExperimental. Must be [none, consensusAnnotations, consensusAnnotationsDeNovo, customAnnotations, tags].") + } + query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) + } + + local_var_url_path <- "/api/projects/{projectId}/compounds/tagged" + 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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "PagedModelCompound", 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 + #' Page of available compounds (group of ion identities) in the given project-space. + #' + #' @param project_id project-space to read from. + #' @param page (optional) Zero-based page index (0..N) (default value: 0) + #' @param size (optional) The size of the page to be returned (default value: 20) + #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) + #' @param opt_fields_features (optional) No description (default value: [none]) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return PagedModelCompound + GetCompoundsPaged = function(project_id, page = 0, size = 20, sort = NULL, ms_data_search_prepared = FALSE, opt_fields = list(NULL), opt_fields_features = list(NULL), data_file = NULL, ...) { + local_var_response <- self$GetCompoundsPagedWithHttpInfo(project_id, page, size, sort, ms_data_search_prepared, opt_fields, opt_fields_features, 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 + #' Page of available compounds (group of ion identities) in the given project-space. + #' + #' @param project_id project-space to read from. + #' @param page (optional) Zero-based page index (0..N) (default value: 0) + #' @param size (optional) The size of the page to be returned (default value: 20) + #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) + #' @param opt_fields_features (optional) No description (default value: [none]) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (PagedModelCompound) with additional information such as HTTP status code, headers + GetCompoundsPagedWithHttpInfo = function(project_id, page = 0, size = 20, sort = NULL, ms_data_search_prepared = FALSE, opt_fields = list(NULL), opt_fields_features = list(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`.") + } + + + if (`page` < 0) { stop("Invalid value for `page` when calling CompoundsApi$GetCompoundsPaged, must be bigger than or equal to 0.") } @@ -793,6 +1536,7 @@ CompoundsApi <- R6::R6Class( + query_params[["page"]] <- `page` query_params[["size"]] <- `size` @@ -802,11 +1546,13 @@ CompoundsApi <- R6::R6Class( query_params[["sort"]] <- c(query_params[["sort"]], list(`sort` = query_item)) } + query_params[["msDataSearchPrepared"]] <- `ms_data_search_prepared` + # explore for (query_item in `opt_fields`) { # validate enum values - if (!is.null(query_item) && !(query_item %in% c("none", "consensusAnnotations", "consensusAnnotationsDeNovo", "customAnnotations"))) { - stop("Invalid value for opt_fields when calling CompoundsApi$GetCompoundsPaged. Must be [none, consensusAnnotations, consensusAnnotationsDeNovo, customAnnotations].") + if (!is.null(query_item) && !(query_item %in% c("none", "consensusAnnotations", "consensusAnnotationsDeNovo", "customAnnotations", "tags"))) { + stop("Invalid value for opt_fields when calling CompoundsApi$GetCompoundsPaged. Must be [none, consensusAnnotations, consensusAnnotationsDeNovo, customAnnotations, tags].") } query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) } @@ -814,8 +1560,8 @@ CompoundsApi <- R6::R6Class( # explore for (query_item in `opt_fields_features`) { # validate enum values - if (!is.null(query_item) && !(query_item %in% c("none", "msData", "topAnnotations", "topAnnotationsDeNovo", "computedTools"))) { - stop("Invalid value for opt_fields_features when calling CompoundsApi$GetCompoundsPaged. Must be [none, msData, topAnnotations, topAnnotationsDeNovo, computedTools].") + if (!is.null(query_item) && !(query_item %in% c("none", "msData", "topAnnotationsSummary", "topAnnotations", "topAnnotationsDeNovo", "computedTools", "tags"))) { + stop("Invalid value for opt_fields_features when calling CompoundsApi$GetCompoundsPaged. Must be [none, msData, topAnnotationsSummary, topAnnotations, topAnnotationsDeNovo, computedTools, tags].") } query_params[["optFieldsFeatures"]] <- c(query_params[["optFieldsFeatures"]], list(`optFieldsFeatures` = query_item)) } @@ -869,6 +1615,216 @@ CompoundsApi <- R6::R6Class( } local_var_resp } + }, + + #' @description + #' [EXPERIMENTAL] Get all tags associated with this Compound + #' + #' @param project_id project-space to get from. + #' @param object_id CompoundId to get tags for. + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return array[Tag] + GetTagsForCompoundExperimental = function(project_id, object_id, data_file = NULL, ...) { + local_var_response <- self$GetTagsForCompoundExperimentalWithHttpInfo(project_id, object_id, 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 + #' [EXPERIMENTAL] Get all tags associated with this Compound + #' + #' @param project_id project-space to get from. + #' @param object_id CompoundId to get tags for. + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (array[Tag]) with additional information such as HTTP status code, headers + GetTagsForCompoundExperimentalWithHttpInfo = function(project_id, object_id, 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`.") + } + + if (missing(`object_id`)) { + stop("Missing required parameter `object_id`.") + } + + + + local_var_url_path <- "/api/projects/{projectId}/compounds/tags/{objectId}" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`object_id`)) { + local_var_url_path <- gsub("\\{objectId\\}", URLencode(as.character(`object_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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "array[Tag]", 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 + #' [EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space + #' + #' @param project_id project-space to delete from. + #' @param compound_id compound (group of ion identities) to delete tag from. + #' @param tag_name name of the tag to delete. + #' @param ... Other optional arguments + #' + #' @return void + RemoveTagFromCompoundExperimental = function(project_id, compound_id, tag_name, ...) { + local_var_response <- self$RemoveTagFromCompoundExperimentalWithHttpInfo(project_id, compound_id, tag_name, ...) + 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 + #' [EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space + #' + #' @param project_id project-space to delete from. + #' @param compound_id compound (group of ion identities) to delete tag from. + #' @param tag_name name of the tag to delete. + #' @param ... Other optional arguments + #' + #' @return API response (void) with additional information such as HTTP status code, headers + RemoveTagFromCompoundExperimentalWithHttpInfo = function(project_id, compound_id, tag_name, ...) { + 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`.") + } + + if (missing(`compound_id`)) { + stop("Missing required parameter `compound_id`.") + } + + if (missing(`tag_name`)) { + stop("Missing required parameter `tag_name`.") + } + + + + + local_var_url_path <- "/api/projects/{projectId}/compounds/tags/{compoundId}/{tagName}" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`compound_id`)) { + local_var_url_path <- gsub("\\{compoundId\\}", URLencode(as.character(`compound_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`tag_name`)) { + local_var_url_path <- gsub("\\{tagName\\}", URLencode(as.character(`tag_name`), 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 = "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) { + 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/computed_subtools.R b/client-api_r/generated/R/computed_subtools.R index 0d434051..4b3c1eda 100644 --- a/client-api_r/generated/R/computed_subtools.R +++ b/client-api_r/generated/R/computed_subtools.R @@ -1,7 +1,7 @@ #' Create a new ComputedSubtools #' #' @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. +#' ComputedSubtools Class #' #' @docType class #' @title ComputedSubtools diff --git a/client-api_r/generated/R/consensus_annotations_csi.R b/client-api_r/generated/R/consensus_annotations_csi.R index c8f8baa2..18fca992 100644 --- a/client-api_r/generated/R/consensus_annotations_csi.R +++ b/client-api_r/generated/R/consensus_annotations_csi.R @@ -8,10 +8,10 @@ #' @description ConsensusAnnotationsCSI Class #' @format An \code{R6Class} generator object #' @field molecularFormula Molecular formula of the consensus annotation Might be null if no consensus formula is available. character [optional] -#' @field compoundClasses \link{CompoundClasses} [optional] +#' @field compoundClasses Compound classes (predicted with CANOPUS) corresponding to the molecularFormula Might be null if no fingerprints or compound classes are available. \link{CompoundClasses} [optional] #' @field supportingFeatureIds FeatureIds where the topAnnotation supports this annotation. list(character) [optional] #' @field selectionCriterion Null if this is a custom selection character [optional] -#' @field csiFingerIdStructure \link{StructureCandidate} [optional] +#' @field csiFingerIdStructure Database structure candidate (searched with CSI:FingerID), that also defines the molecularFormula Might be null if no consensus structure is available. \link{StructureCandidate} [optional] #' @field confidenceExactMatch Confidence value that represents the certainty that reported consensus structure is exactly the measured one If multiple features support this consensus structure the maximum confidence is reported numeric [optional] #' @field confidenceApproxMatch Confidence value that represents the certainty that the exact consensus structure or a very similar structure (e.g. measured by Maximum Common Edge Subgraph Distance) is the measured one. If multiple features support this consensus structure the maximum confidence is reported numeric [optional] #' @importFrom R6 R6Class @@ -32,10 +32,10 @@ ConsensusAnnotationsCSI <- R6::R6Class( #' Initialize a new ConsensusAnnotationsCSI class. #' #' @param molecularFormula Molecular formula of the consensus annotation Might be null if no consensus formula is available. - #' @param compoundClasses compoundClasses + #' @param compoundClasses Compound classes (predicted with CANOPUS) corresponding to the molecularFormula Might be null if no fingerprints or compound classes are available. #' @param supportingFeatureIds FeatureIds where the topAnnotation supports this annotation. #' @param selectionCriterion Null if this is a custom selection - #' @param csiFingerIdStructure csiFingerIdStructure + #' @param csiFingerIdStructure Database structure candidate (searched with CSI:FingerID), that also defines the molecularFormula Might be null if no consensus structure is available. #' @param confidenceExactMatch Confidence value that represents the certainty that reported consensus structure is exactly the measured one If multiple features support this consensus structure the maximum confidence is reported #' @param confidenceApproxMatch Confidence value that represents the certainty that the exact consensus structure or a very similar structure (e.g. measured by Maximum Common Edge Subgraph Distance) is the measured one. If multiple features support this consensus structure the maximum confidence is reported #' @param ... Other optional arguments. diff --git a/client-api_r/generated/R/consensus_annotations_de_novo.R b/client-api_r/generated/R/consensus_annotations_de_novo.R index 86f8a8cf..774ff391 100644 --- a/client-api_r/generated/R/consensus_annotations_de_novo.R +++ b/client-api_r/generated/R/consensus_annotations_de_novo.R @@ -8,7 +8,7 @@ #' @description ConsensusAnnotationsDeNovo Class #' @format An \code{R6Class} generator object #' @field molecularFormula Molecular formula of the consensus annotation Might be null if no consensus formula is available. character [optional] -#' @field compoundClasses \link{CompoundClasses} [optional] +#' @field compoundClasses Compound classes (predicted with CANOPUS) corresponding to the molecularFormula Might be null if no fingerprints or compound classes are available. \link{CompoundClasses} [optional] #' @field supportingFeatureIds FeatureIds where the topAnnotation supports this annotation. list(character) [optional] #' @field selectionCriterion Criterion that was used to select the consensus annotation. character [optional] #' @importFrom R6 R6Class @@ -26,7 +26,7 @@ ConsensusAnnotationsDeNovo <- R6::R6Class( #' Initialize a new ConsensusAnnotationsDeNovo class. #' #' @param molecularFormula Molecular formula of the consensus annotation Might be null if no consensus formula is available. - #' @param compoundClasses compoundClasses + #' @param compoundClasses Compound classes (predicted with CANOPUS) corresponding to the molecularFormula Might be null if no fingerprints or compound classes are available. #' @param supportingFeatureIds FeatureIds where the topAnnotation supports this annotation. #' @param selectionCriterion Criterion that was used to select the consensus annotation. #' @param ... Other optional arguments. diff --git a/client-api_r/generated/R/feature_annotations.R b/client-api_r/generated/R/feature_annotations.R index d076594a..e48db544 100644 --- a/client-api_r/generated/R/feature_annotations.R +++ b/client-api_r/generated/R/feature_annotations.R @@ -7,9 +7,9 @@ #' @title FeatureAnnotations #' @description FeatureAnnotations Class #' @format An \code{R6Class} generator object -#' @field formulaAnnotation \link{FormulaCandidate} [optional] -#' @field structureAnnotation \link{StructureCandidateScored} [optional] -#' @field compoundClassAnnotation \link{CompoundClasses} [optional] +#' @field formulaAnnotation Best matching FormulaCandidate. \link{FormulaCandidate} [optional] +#' @field structureAnnotation Best matching StructureCandidate ranked by CSI:FingerID Score over all FormulaCandidates. \link{StructureCandidateScored} [optional] +#' @field compoundClassAnnotation Best matching compound classes that correspond to the formulaAnnotation \link{CompoundClasses} [optional] #' @field confidenceExactMatch Confidence Score that represents the confidence whether the top hit is correct. numeric [optional] #' @field confidenceApproxMatch Confidence Score that represents the confidence whether the top hit or a very similar hit (estimated by MCES distance) is correct. numeric [optional] #' @field expansiveSearchState 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) character [optional] @@ -33,9 +33,9 @@ FeatureAnnotations <- R6::R6Class( #' @description #' Initialize a new FeatureAnnotations class. #' - #' @param formulaAnnotation formulaAnnotation - #' @param structureAnnotation structureAnnotation - #' @param compoundClassAnnotation compoundClassAnnotation + #' @param formulaAnnotation Best matching FormulaCandidate. + #' @param structureAnnotation Best matching StructureCandidate ranked by CSI:FingerID Score over all FormulaCandidates. + #' @param compoundClassAnnotation Best matching compound classes that correspond to the formulaAnnotation #' @param confidenceExactMatch Confidence Score that represents the confidence whether the top hit is correct. #' @param confidenceApproxMatch Confidence Score that represents the confidence whether the top hit or a very similar hit (estimated by MCES distance) is correct. #' @param expansiveSearchState 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) diff --git a/client-api_r/generated/R/feature_import.R b/client-api_r/generated/R/feature_import.R index f9605b50..51c6cdd1 100644 --- a/client-api_r/generated/R/feature_import.R +++ b/client-api_r/generated/R/feature_import.R @@ -16,7 +16,7 @@ #' @field rtEndSeconds numeric [optional] #' @field rtApexSeconds numeric [optional] #' @field dataQuality 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. character [optional] -#' @field mergedMs1 \link{BasicSpectrum} [optional] +#' @field mergedMs1 Merged/Representative MS1 spectrum of this feature that contains the isotope pattern of the precursor ion. Note: 'ms1Spectra' will be ignored if given. \link{BasicSpectrum} [optional] #' @field ms1Spectra List of MS1Spectra belonging to this feature. These spectra will be merged an only a representative mergedMs1 spectrum will be stored in SIRIUS. At least one of these spectra should contain the isotope pattern of the precursor ion. Note: Will be ignored if 'mergedMs1' is given. list(\link{BasicSpectrum}) [optional] #' @field ms2Spectra List of MS/MS spectra that belong to this feature. list(\link{BasicSpectrum}) [optional] #' @importFrom R6 R6Class @@ -50,7 +50,7 @@ FeatureImport <- R6::R6Class( #' @param rtEndSeconds rtEndSeconds #' @param rtApexSeconds rtApexSeconds #' @param dataQuality 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. - #' @param mergedMs1 mergedMs1 + #' @param mergedMs1 Merged/Representative MS1 spectrum of this feature that contains the isotope pattern of the precursor ion. Note: 'ms1Spectra' will be ignored if given. #' @param ms1Spectra List of MS1Spectra belonging to this feature. These spectra will be merged an only a representative mergedMs1 spectrum will be stored in SIRIUS. At least one of these spectra should contain the isotope pattern of the precursor ion. Note: Will be ignored if 'mergedMs1' is given. #' @param ms2Spectra List of MS/MS spectra that belong to this feature. #' @param ... Other optional arguments. diff --git a/client-api_r/generated/R/feature_statistics_api.R b/client-api_r/generated/R/feature_statistics_api.R new file mode 100644 index 00000000..87839580 --- /dev/null +++ b/client-api_r/generated/R/feature_statistics_api.R @@ -0,0 +1,576 @@ +#' 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 FeatureStatistics operations +#' @description FeatureStatisticsApi +#' @format An \code{R6Class} generator object +#' @field api_client Handles the client-server communication. +#' +#' @examples +#' \dontrun{ +#' #################### ComputeAlignedFeatureFoldChangesExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to compute the fold change in. +#' var_left_group_name <- "left_group_name_example" # character | name of the left tag group. +#' var_right_group_name <- "right_group_name_example" # character | name of the right tag group. +#' var_aggregation <- "AVG" # character | aggregation type. (Optional) +#' var_quantification <- "APEX_INTENSITY" # character | quantification type. (Optional) +#' var_opt_fields <- c("none") # array[character] | job opt fields. (Optional) +#' +#' #[EXPERIMENTAL] Compute the fold change between two groups of runs +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$ComputeAlignedFeatureFoldChangesExperimental(var_project_id, var_left_group_name, var_right_group_name, aggregation = var_aggregation, quantification = var_quantification, opt_fields = var_opt_fieldsdata_file = "result.txt") +#' result <- api_instance$feature_statistics_api$ComputeAlignedFeatureFoldChangesExperimental(var_project_id, var_left_group_name, var_right_group_name, aggregation = var_aggregation, quantification = var_quantification, opt_fields = var_opt_fields) +#' dput(result) +#' +#' +#' #################### DeleteAlignedFeatureFoldChangesExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to delete from. +#' var_left_group_name <- "left_group_name_example" # character | name of the left group. +#' var_right_group_name <- "right_group_name_example" # character | name of the right group. +#' var_aggregation <- "AVG" # character | (Optional) +#' var_quantification <- "APEX_INTENSITY" # character | (Optional) +#' +#' #[EXPERIMENTAL] Delete fold changes +#' api_instance <- rsirius_api$new() +#' +#' api_instance$feature_statistics_api$DeleteAlignedFeatureFoldChangesExperimental(var_project_id, var_left_group_name, var_right_group_name, aggregation = var_aggregation, quantification = var_quantification) +#' +#' +#' #################### GetAlignedFeatureFoldChangeTableExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to read from. +#' var_aggregation <- "AVG" # character | aggregation type. (Optional) +#' var_quantification <- "APEX_INTENSITY" # character | quantification type. (Optional) +#' +#' #[EXPERIMENTAL] Get table of all fold changes in the project space +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetAlignedFeatureFoldChangeTableExperimental(var_project_id, aggregation = var_aggregation, quantification = var_quantificationdata_file = "result.txt") +#' result <- api_instance$feature_statistics_api$GetAlignedFeatureFoldChangeTableExperimental(var_project_id, aggregation = var_aggregation, quantification = var_quantification) +#' dput(result) +#' +#' +#' #################### GetFoldChangesByAlignedFeatureExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to read from. +#' var_object_id <- "object_id_example" # character | id of the object the fold changes are assigned to. +#' +#' #[EXPERIMENTAL] List all fold changes that are associated with an object +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetFoldChangesByAlignedFeatureExperimental(var_project_id, var_object_iddata_file = "result.txt") +#' result <- api_instance$feature_statistics_api$GetFoldChangesByAlignedFeatureExperimental(var_project_id, var_object_id) +#' dput(result) +#' +#' +#' } +#' @importFrom R6 R6Class +#' @importFrom base64enc base64encode +#' @export +FeatureStatisticsApi <- R6::R6Class( + "FeatureStatisticsApi", + public = list( + api_client = NULL, + + #' @description + #' Initialize a new FeatureStatisticsApi. + #' + #' @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 + #' [EXPERIMENTAL] Compute the fold change between two groups of runs + #' + #' @param project_id project-space to compute the fold change in. + #' @param left_group_name name of the left tag group. + #' @param right_group_name name of the right tag group. + #' @param aggregation (optional) aggregation type. (default value: "AVG") + #' @param quantification (optional) quantification type. (default value: "APEX_INTENSITY") + #' @param opt_fields (optional) job opt fields. (default value: [progress]) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return Job + ComputeAlignedFeatureFoldChangesExperimental = function(project_id, left_group_name, right_group_name, aggregation = "AVG", quantification = "APEX_INTENSITY", opt_fields = list(progress), data_file = NULL, ...) { + local_var_response <- self$ComputeAlignedFeatureFoldChangesExperimentalWithHttpInfo(project_id, left_group_name, right_group_name, aggregation, quantification, opt_fields, 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 + #' [EXPERIMENTAL] Compute the fold change between two groups of runs + #' + #' @param project_id project-space to compute the fold change in. + #' @param left_group_name name of the left tag group. + #' @param right_group_name name of the right tag group. + #' @param aggregation (optional) aggregation type. (default value: "AVG") + #' @param quantification (optional) quantification type. (default value: "APEX_INTENSITY") + #' @param opt_fields (optional) job opt fields. (default value: [progress]) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (Job) with additional information such as HTTP status code, headers + ComputeAlignedFeatureFoldChangesExperimentalWithHttpInfo = function(project_id, left_group_name, right_group_name, aggregation = "AVG", quantification = "APEX_INTENSITY", opt_fields = list(progress), 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`.") + } + + if (missing(`left_group_name`)) { + stop("Missing required parameter `left_group_name`.") + } + + if (missing(`right_group_name`)) { + stop("Missing required parameter `right_group_name`.") + } + + + + + + + + query_params[["leftGroupName"]] <- `left_group_name` + + query_params[["rightGroupName"]] <- `right_group_name` + + if (!is.null(`aggregation`) && !(`aggregation` %in% c("AVG", "MIN", "MAX"))) { + stop("Invalid value for aggregation when calling FeatureStatisticsApi$ComputeAlignedFeatureFoldChangesExperimental. Must be [AVG, MIN, MAX].") + } + query_params[["aggregation"]] <- `aggregation` + + if (!is.null(`quantification`) && !(`quantification` %in% c("APEX_INTENSITY", "AREA_UNDER_CURVE"))) { + stop("Invalid value for quantification when calling FeatureStatisticsApi$ComputeAlignedFeatureFoldChangesExperimental. Must be [APEX_INTENSITY, AREA_UNDER_CURVE].") + } + query_params[["quantification"]] <- `quantification` + + # explore + for (query_item in `opt_fields`) { + # validate enum values + if (!is.null(query_item) && !(query_item %in% c("none", "command", "progress", "affectedIds"))) { + stop("Invalid value for opt_fields when calling FeatureStatisticsApi$ComputeAlignedFeatureFoldChangesExperimental. Must be [none, command, progress, affectedIds].") + } + query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) + } + + local_var_url_path <- "/api/projects/{projectId}/aligned-features/statistics/foldchange/compute" + 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 = "PUT", + 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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "Job", 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 + #' [EXPERIMENTAL] Delete fold changes + #' + #' @param project_id project-space to delete from. + #' @param left_group_name name of the left group. + #' @param right_group_name name of the right group. + #' @param aggregation (optional) No description (default value: "AVG") + #' @param quantification (optional) No description (default value: "APEX_INTENSITY") + #' @param ... Other optional arguments + #' + #' @return void + DeleteAlignedFeatureFoldChangesExperimental = function(project_id, left_group_name, right_group_name, aggregation = "AVG", quantification = "APEX_INTENSITY", ...) { + local_var_response <- self$DeleteAlignedFeatureFoldChangesExperimentalWithHttpInfo(project_id, left_group_name, right_group_name, aggregation, quantification, ...) + 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 + #' [EXPERIMENTAL] Delete fold changes + #' + #' @param project_id project-space to delete from. + #' @param left_group_name name of the left group. + #' @param right_group_name name of the right group. + #' @param aggregation (optional) No description (default value: "AVG") + #' @param quantification (optional) No description (default value: "APEX_INTENSITY") + #' @param ... Other optional arguments + #' + #' @return API response (void) with additional information such as HTTP status code, headers + DeleteAlignedFeatureFoldChangesExperimentalWithHttpInfo = function(project_id, left_group_name, right_group_name, aggregation = "AVG", quantification = "APEX_INTENSITY", ...) { + 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`.") + } + + if (missing(`left_group_name`)) { + stop("Missing required parameter `left_group_name`.") + } + + if (missing(`right_group_name`)) { + stop("Missing required parameter `right_group_name`.") + } + + + + + + + query_params[["leftGroupName"]] <- `left_group_name` + + query_params[["rightGroupName"]] <- `right_group_name` + + if (!is.null(`aggregation`) && !(`aggregation` %in% c("AVG", "MIN", "MAX"))) { + stop("Invalid value for aggregation when calling FeatureStatisticsApi$DeleteAlignedFeatureFoldChangesExperimental. Must be [AVG, MIN, MAX].") + } + query_params[["aggregation"]] <- `aggregation` + + if (!is.null(`quantification`) && !(`quantification` %in% c("APEX_INTENSITY", "AREA_UNDER_CURVE"))) { + stop("Invalid value for quantification when calling FeatureStatisticsApi$DeleteAlignedFeatureFoldChangesExperimental. Must be [APEX_INTENSITY, AREA_UNDER_CURVE].") + } + query_params[["quantification"]] <- `quantification` + + local_var_url_path <- "/api/projects/{projectId}/aligned-features/statistics/foldchanges" + 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 = "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) { + 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 + } + }, + + #' @description + #' [EXPERIMENTAL] Get table of all fold changes in the project space + #' + #' @param project_id project-space to read from. + #' @param aggregation (optional) aggregation type. (default value: "AVG") + #' @param quantification (optional) quantification type. (default value: "APEX_INTENSITY") + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return StatisticsTable + GetAlignedFeatureFoldChangeTableExperimental = function(project_id, aggregation = "AVG", quantification = "APEX_INTENSITY", data_file = NULL, ...) { + local_var_response <- self$GetAlignedFeatureFoldChangeTableExperimentalWithHttpInfo(project_id, aggregation, quantification, 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 + #' [EXPERIMENTAL] Get table of all fold changes in the project space + #' + #' @param project_id project-space to read from. + #' @param aggregation (optional) aggregation type. (default value: "AVG") + #' @param quantification (optional) quantification type. (default value: "APEX_INTENSITY") + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (StatisticsTable) with additional information such as HTTP status code, headers + GetAlignedFeatureFoldChangeTableExperimentalWithHttpInfo = function(project_id, aggregation = "AVG", quantification = "APEX_INTENSITY", 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`.") + } + + + + + if (!is.null(`aggregation`) && !(`aggregation` %in% c("AVG", "MIN", "MAX"))) { + stop("Invalid value for aggregation when calling FeatureStatisticsApi$GetAlignedFeatureFoldChangeTableExperimental. Must be [AVG, MIN, MAX].") + } + query_params[["aggregation"]] <- `aggregation` + + if (!is.null(`quantification`) && !(`quantification` %in% c("APEX_INTENSITY", "AREA_UNDER_CURVE"))) { + stop("Invalid value for quantification when calling FeatureStatisticsApi$GetAlignedFeatureFoldChangeTableExperimental. Must be [APEX_INTENSITY, AREA_UNDER_CURVE].") + } + query_params[["quantification"]] <- `quantification` + + local_var_url_path <- "/api/projects/{projectId}/aligned-features/statistics/foldchanges/stats-table" + 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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "StatisticsTable", 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 + #' [EXPERIMENTAL] List all fold changes that are associated with an object + #' + #' @param project_id project-space to read from. + #' @param object_id id of the object the fold changes are assigned to. + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return array[FoldChange] + GetFoldChangesByAlignedFeatureExperimental = function(project_id, object_id, data_file = NULL, ...) { + local_var_response <- self$GetFoldChangesByAlignedFeatureExperimentalWithHttpInfo(project_id, object_id, 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 + #' [EXPERIMENTAL] List all fold changes that are associated with an object + #' + #' @param project_id project-space to read from. + #' @param object_id id of the object the fold changes are assigned to. + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (array[FoldChange]) with additional information such as HTTP status code, headers + GetFoldChangesByAlignedFeatureExperimentalWithHttpInfo = function(project_id, object_id, 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`.") + } + + if (missing(`object_id`)) { + stop("Missing required parameter `object_id`.") + } + + + + local_var_url_path <- "/api/projects/{projectId}/aligned-features/statistics/foldchanges/{objectId}" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`object_id`)) { + local_var_url_path <- gsub("\\{objectId\\}", URLencode(as.character(`object_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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "array[FoldChange]", 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 + } + } + ) +) diff --git a/client-api_r/generated/R/features_api.R b/client-api_r/generated/R/features_api.R index df8ca650..fea4cdeb 100644 --- a/client-api_r/generated/R/features_api.R +++ b/client-api_r/generated/R/features_api.R @@ -17,7 +17,7 @@ #' #' library(Rsirius) #' var_project_id <- "project_id_example" # character | project-space to import into. -#' var_feature_import <- c(FeatureImport$new(123, 123, "name_example", "externalFeatureId_example", c("detectedAdducts_example"), 123, 123, 123, "NOT_APPLICABLE", BasicSpectrum$new(c(SimplePeak$new(123, 123)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, 123), c(BasicSpectrum$new(c(SimplePeak$new(123, 123)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, 123)), c(BasicSpectrum$new(c(SimplePeak$new(123, 123)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, 123)))) # array[FeatureImport] | the feature data to be imported +#' var_feature_import <- c(FeatureImport$new(123, 123, "name_example", "externalFeatureId_example", c("detectedAdducts_example"), 123, 123, 123, "NOT_APPLICABLE", BasicSpectrum$new("cosineQuery_example", c(SimplePeak$new(123, 123)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, SimplePeak$new(123, 123), 123, 123, 123, 123, 123), c(BasicSpectrum$new("cosineQuery_example", c(SimplePeak$new(123, 123)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, SimplePeak$new(123, 123), 123, 123, 123, 123, 123)), c(BasicSpectrum$new("cosineQuery_example", c(SimplePeak$new(123, 123)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, SimplePeak$new(123, 123), 123, 123, 123, 123, 123)))) # array[FeatureImport] | the feature data to be imported #' var_profile <- "profile_example" # character | profile describing the instrument used to measure the data. Used to merge spectra. (Optional) #' var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' to override defaults. (Optional) #' @@ -30,6 +30,38 @@ #' dput(result) #' #' +#' #################### AddDeNovoStructureCandidate #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to read from. +#' var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the structure candidates belong to. +#' var_smiles <- "none" # character | smiles (Optional) +#' +#' #[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$AddDeNovoStructureCandidate(var_project_id, var_aligned_feature_id, smiles = var_smilesdata_file = "result.txt") +#' result <- api_instance$features_api$AddDeNovoStructureCandidate(var_project_id, var_aligned_feature_id, smiles = var_smiles) +#' dput(result) +#' +#' +#' #################### AddTagsToAlignedFeatureExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to add to. +#' var_aligned_feature_id <- "aligned_feature_id_example" # character | run to add tags to. +#' var_tag <- c(Tag$new("tagName_example", TODO)) # array[Tag] | tags to add. +#' +#' #[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$AddTagsToAlignedFeatureExperimental(var_project_id, var_aligned_feature_id, var_tagdata_file = "result.txt") +#' result <- api_instance$features_api$AddTagsToAlignedFeatureExperimental(var_project_id, var_aligned_feature_id, var_tag) +#' dput(result) +#' +#' #' #################### DeleteAlignedFeature #################### #' #' library(Rsirius) @@ -60,7 +92,7 @@ #' var_project_id <- "project_id_example" # character | project-space to read from. #' var_aligned_feature_id <- "aligned_feature_id_example" # character | one feature that is considered the main feature of the adduct network #' -#' #EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +#' #[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. @@ -74,14 +106,30 @@ #' library(Rsirius) #' var_project_id <- "project_id_example" # character | project-space to read from. #' var_aligned_feature_id <- "aligned_feature_id_example" # character | identifier of feature (aligned over runs) to access. +#' var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (Optional) #' var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) #' #' #Get feature (aligned over runs) with the given identifier from the specified project-space. #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$GetAlignedFeature(var_project_id, var_aligned_feature_id, opt_fields = var_opt_fieldsdata_file = "result.txt") -#' result <- api_instance$features_api$GetAlignedFeature(var_project_id, var_aligned_feature_id, opt_fields = var_opt_fields) +#' # result <- api_instance$GetAlignedFeature(var_project_id, var_aligned_feature_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fieldsdata_file = "result.txt") +#' result <- api_instance$features_api$GetAlignedFeature(var_project_id, var_aligned_feature_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields) +#' dput(result) +#' +#' +#' #################### GetAlignedFeatureQualityExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to read from. +#' var_aligned_feature_id <- "aligned_feature_id_example" # character | identifier of feature (aligned over runs) to access. +#' +#' #[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId) +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetAlignedFeatureQualityExperimental(var_project_id, var_aligned_feature_iddata_file = "result.txt") +#' result <- api_instance$features_api$GetAlignedFeatureQualityExperimental(var_project_id, var_aligned_feature_id) #' dput(result) #' #' @@ -89,47 +137,72 @@ #' #' library(Rsirius) #' var_project_id <- "project_id_example" # character | project-space to read from. +#' var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (Optional) #' var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) #' #' #Get all available features (aligned over runs) in the given project-space. #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$GetAlignedFeatures(var_project_id, opt_fields = var_opt_fieldsdata_file = "result.txt") -#' result <- api_instance$features_api$GetAlignedFeatures(var_project_id, opt_fields = var_opt_fields) +#' # result <- api_instance$GetAlignedFeatures(var_project_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fieldsdata_file = "result.txt") +#' result <- api_instance$features_api$GetAlignedFeatures(var_project_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields) #' dput(result) #' #' -#' #################### GetAlignedFeaturesPaged #################### +#' #################### GetAlignedFeaturesByGroupExperimental #################### #' #' library(Rsirius) -#' var_project_id <- "project_id_example" # character | project-space to read from. +#' var_project_id <- "project_id_example" # character | project-space to delete from. +#' var_group_name <- "group_name_example" # character | tag group name. #' var_page <- 0 # integer | Zero-based page index (0..N) (Optional) #' var_size <- 20 # integer | The size of the page to be returned (Optional) #' var_sort <- c("inner_example") # array[character] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (Optional) #' var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) #' -#' #Get all available features (aligned over runs) in the given project-space. +#' #[EXPERIMENTAL] Get features (aligned over runs) by tag group +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetAlignedFeaturesByGroupExperimental(var_project_id, var_group_name, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fieldsdata_file = "result.txt") +#' result <- api_instance$features_api$GetAlignedFeaturesByGroupExperimental(var_project_id, var_group_name, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fields) +#' dput(result) +#' +#' +#' #################### GetAlignedFeaturesByTagExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project space to get features (aligned over runs) from. +#' var_filter <- "" # character | tag filter. (Optional) +#' var_page <- 0 # integer | Zero-based page index (0..N) (Optional) +#' var_size <- 20 # integer | The size of the page to be returned (Optional) +#' var_sort <- c("inner_example") # array[character] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (Optional) +#' var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) +#' +#' #[EXPERIMENTAL] Get features (aligned over runs) by tag #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$GetAlignedFeaturesPaged(var_project_id, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fieldsdata_file = "result.txt") -#' result <- api_instance$features_api$GetAlignedFeaturesPaged(var_project_id, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fields) +#' # result <- api_instance$GetAlignedFeaturesByTagExperimental(var_project_id, filter = var_filter, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fieldsdata_file = "result.txt") +#' result <- api_instance$features_api$GetAlignedFeaturesByTagExperimental(var_project_id, filter = var_filter, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fields) #' dput(result) #' #' -#' #################### GetAlignedFeaturesQualityExperimental #################### +#' #################### GetAlignedFeaturesPaged #################### #' #' library(Rsirius) #' var_project_id <- "project_id_example" # character | project-space to read from. -#' var_aligned_feature_id <- "aligned_feature_id_example" # character | identifier of feature (aligned over runs) to access. +#' var_page <- 0 # integer | Zero-based page index (0..N) (Optional) +#' var_size <- 20 # integer | The size of the page to be returned (Optional) +#' var_sort <- c("inner_example") # array[character] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (Optional) +#' var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (Optional) +#' var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) #' -#' #EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +#' #Get all available features (aligned over runs) in the given project-space. #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$GetAlignedFeaturesQualityExperimental(var_project_id, var_aligned_feature_iddata_file = "result.txt") -#' result <- api_instance$features_api$GetAlignedFeaturesQualityExperimental(var_project_id, var_aligned_feature_id) +#' # result <- api_instance$GetAlignedFeaturesPaged(var_project_id, page = var_page, size = var_size, sort = var_sort, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fieldsdata_file = "result.txt") +#' result <- api_instance$features_api$GetAlignedFeaturesPaged(var_project_id, page = var_page, size = var_size, sort = var_sort, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields) #' dput(result) #' #' @@ -140,7 +213,7 @@ #' var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the formula result belongs to. #' var_formula_id <- "formula_id_example" # character | identifier of the requested formula result #' -#' #Best matching compound classes, Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, +#' #Return Best matching compound classes for given formulaId #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. @@ -237,6 +310,21 @@ #' dput(result) #' #' +#' #################### GetFeatureQuantTableExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to read from. +#' var_type <- "APEX_HEIGHT" # character | quantification type. (Optional) +#' +#' #[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId) +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetFeatureQuantTableExperimental(var_project_id, type = var_typedata_file = "result.txt") +#' result <- api_instance$features_api$GetFeatureQuantTableExperimental(var_project_id, type = var_type) +#' dput(result) +#' +#' #' #################### GetFingerprintPrediction #################### #' #' library(Rsirius) @@ -244,7 +332,7 @@ #' var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the formula result belongs to. #' var_formula_id <- "formula_id_example" # character | identifier of the requested formula result #' -#' #Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier This fingerprint is used to perform structure database search and predict compound classes. +#' #Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId) #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. @@ -259,13 +347,14 @@ #' var_project_id <- "project_id_example" # character | project-space to read from. #' var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the formula result belongs to. #' var_formula_id <- "formula_id_example" # character | identifier of the requested formula result +#' var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (Optional) #' -#' #Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. +#' #Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$GetFormulaAnnotatedMsMsData(var_project_id, var_aligned_feature_id, var_formula_iddata_file = "result.txt") -#' result <- api_instance$features_api$GetFormulaAnnotatedMsMsData(var_project_id, var_aligned_feature_id, var_formula_id) +#' # result <- api_instance$GetFormulaAnnotatedMsMsData(var_project_id, var_aligned_feature_id, var_formula_id, ms_data_search_prepared = var_ms_data_search_prepareddata_file = "result.txt") +#' result <- api_instance$features_api$GetFormulaAnnotatedMsMsData(var_project_id, var_aligned_feature_id, var_formula_id, ms_data_search_prepared = var_ms_data_search_prepared) #' dput(result) #' #' @@ -276,13 +365,14 @@ #' var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the formula result belongs to. #' var_formula_id <- "formula_id_example" # character | identifier of the requested formula result #' var_spectrum_index <- -1 # integer | index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) (Optional) +#' var_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (Optional) #' -#' #Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. +#' #Returns a fragmentation spectrum (e #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$GetFormulaAnnotatedSpectrum(var_project_id, var_aligned_feature_id, var_formula_id, spectrum_index = var_spectrum_indexdata_file = "result.txt") -#' result <- api_instance$features_api$GetFormulaAnnotatedSpectrum(var_project_id, var_aligned_feature_id, var_formula_id, spectrum_index = var_spectrum_index) +#' # result <- api_instance$GetFormulaAnnotatedSpectrum(var_project_id, var_aligned_feature_id, var_formula_id, spectrum_index = var_spectrum_index, search_prepared = var_search_prepareddata_file = "result.txt") +#' result <- api_instance$features_api$GetFormulaAnnotatedSpectrum(var_project_id, var_aligned_feature_id, var_formula_id, spectrum_index = var_spectrum_index, search_prepared = var_search_prepared) #' dput(result) #' #' @@ -292,14 +382,15 @@ #' var_project_id <- "project_id_example" # character | project-space to read from. #' var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the formula result belongs to. #' var_formula_id <- "formula_id_example" # character | identifier of the requested formula result +#' var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (Optional) #' var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) #' #' #FormulaResultContainers for the given 'formulaId' with minimal information. #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$GetFormulaCandidate(var_project_id, var_aligned_feature_id, var_formula_id, opt_fields = var_opt_fieldsdata_file = "result.txt") -#' result <- api_instance$features_api$GetFormulaCandidate(var_project_id, var_aligned_feature_id, var_formula_id, opt_fields = var_opt_fields) +#' # result <- api_instance$GetFormulaCandidate(var_project_id, var_aligned_feature_id, var_formula_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fieldsdata_file = "result.txt") +#' result <- api_instance$features_api$GetFormulaCandidate(var_project_id, var_aligned_feature_id, var_formula_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields) #' dput(result) #' #' @@ -308,14 +399,15 @@ #' library(Rsirius) #' var_project_id <- "project_id_example" # character | project-space to read from. #' var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the formula result belongs to. +#' var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (Optional) #' var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) #' #' #List of FormulaResultContainers available for this feature with minimal information. #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$GetFormulaCandidates(var_project_id, var_aligned_feature_id, opt_fields = var_opt_fieldsdata_file = "result.txt") -#' result <- api_instance$features_api$GetFormulaCandidates(var_project_id, var_aligned_feature_id, opt_fields = var_opt_fields) +#' # result <- api_instance$GetFormulaCandidates(var_project_id, var_aligned_feature_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fieldsdata_file = "result.txt") +#' result <- api_instance$features_api$GetFormulaCandidates(var_project_id, var_aligned_feature_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields) #' dput(result) #' #' @@ -327,14 +419,15 @@ #' var_page <- 0 # integer | Zero-based page index (0..N) (Optional) #' var_size <- 20 # integer | The size of the page to be returned (Optional) #' var_sort <- c("inner_example") # array[character] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (Optional) +#' var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (Optional) #' var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) #' #' #Page of FormulaResultContainers available for this feature with minimal information. #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$GetFormulaCandidatesPaged(var_project_id, var_aligned_feature_id, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fieldsdata_file = "result.txt") -#' result <- api_instance$features_api$GetFormulaCandidatesPaged(var_project_id, var_aligned_feature_id, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fields) +#' # result <- api_instance$GetFormulaCandidatesPaged(var_project_id, var_aligned_feature_id, page = var_page, size = var_size, sort = var_sort, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fieldsdata_file = "result.txt") +#' result <- api_instance$features_api$GetFormulaCandidatesPaged(var_project_id, var_aligned_feature_id, page = var_page, size = var_size, sort = var_sort, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields) #' dput(result) #' #' @@ -345,7 +438,7 @@ #' var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the formula result belongs to. #' var_formula_id <- "formula_id_example" # character | identifier of the requested formula result #' -#' #Returns fragmentation tree (SIRIUS) for the given formula result identifier This tree is used to rank formula candidates (treeScore). +#' #Returns fragmentation tree (SIRIUS) for the given formula result identifier #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. @@ -361,7 +454,7 @@ #' var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the formula result belongs to. #' var_formula_id <- "formula_id_example" # character | identifier of the requested formula result #' -#' #Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. +#' #Returns Isotope pattern information for given formulaId #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. @@ -377,7 +470,7 @@ #' var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the formula result belongs to. #' var_formula_id <- "formula_id_example" # character | identifier of the requested formula result #' -#' #Returns Lipid annotation (ElGordo) for the given formula result identifier. +#' #Returns Lipid annotation (ElGordo) for the given formulaId #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. @@ -390,30 +483,31 @@ #' #' library(Rsirius) #' var_project_id <- "project_id_example" # character | project-space to read from. -#' var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the Mass Spec data belong sto. +#' var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the Mass Spec data belongs to. +#' var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (Optional) #' #' #Mass Spec data (input data) for the given 'alignedFeatureId' . #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$GetMsData(var_project_id, var_aligned_feature_iddata_file = "result.txt") -#' result <- api_instance$features_api$GetMsData(var_project_id, var_aligned_feature_id) +#' # result <- api_instance$GetMsData(var_project_id, var_aligned_feature_id, ms_data_search_prepared = var_ms_data_search_prepareddata_file = "result.txt") +#' result <- api_instance$features_api$GetMsData(var_project_id, var_aligned_feature_id, ms_data_search_prepared = var_ms_data_search_prepared) #' dput(result) #' #' -#' #################### GetQuantificationExperimental #################### +#' #################### GetQuantTableRowExperimental #################### #' #' library(Rsirius) #' var_project_id <- "project_id_example" # character | project-space to read from. -#' var_aligned_feature_id <- "aligned_feature_id_example" # character | feature which intensities should be read out +#' var_aligned_feature_id <- "aligned_feature_id_example" # character | feature which quantity should be read out #' var_type <- "APEX_HEIGHT" # character | quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex. (Optional) #' -#' #EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +#' #[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId) #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$GetQuantificationExperimental(var_project_id, var_aligned_feature_id, type = var_typedata_file = "result.txt") -#' result <- api_instance$features_api$GetQuantificationExperimental(var_project_id, var_aligned_feature_id, type = var_type) +#' # result <- api_instance$GetQuantTableRowExperimental(var_project_id, var_aligned_feature_id, type = var_typedata_file = "result.txt") +#' result <- api_instance$features_api$GetQuantTableRowExperimental(var_project_id, var_aligned_feature_id, type = var_type) #' dput(result) #' #' @@ -422,10 +516,10 @@ #' library(Rsirius) #' var_project_id <- "project_id_example" # character | project-space to read from. #' var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the structure candidates belong to. -#' var_match_id <- "match_id_example" # character | +#' var_match_id <- "match_id_example" # character | id of the library match to be returned. #' var_opt_fields <- c("none") # array[character] | (Optional) #' -#' #List of spectral library matches for the given 'alignedFeatureId'. +#' #Spectral library match for the given 'alignedFeatureId'. #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. @@ -500,13 +594,30 @@ #' var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the formula result belongs to. #' var_formula_id <- "formula_id_example" # character | identifier of the requested formula result #' var_inchi_key <- "inchi_key_example" # character | 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation +#' var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (Optional) +#' +#' #[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetStructureAnnotatedMsDataExperimental(var_project_id, var_aligned_feature_id, var_formula_id, var_inchi_key, ms_data_search_prepared = var_ms_data_search_prepareddata_file = "result.txt") +#' result <- api_instance$features_api$GetStructureAnnotatedMsDataExperimental(var_project_id, var_aligned_feature_id, var_formula_id, var_inchi_key, ms_data_search_prepared = var_ms_data_search_prepared) +#' dput(result) #' -#' #EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. +#' +#' #################### GetStructureAnnotatedSpectralLibraryMatchExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to read from. +#' var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the structure candidates belong to. +#' var_match_id <- "match_id_example" # character | id of the library match to be returned. +#' +#' #[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$GetStructureAnnotatedMsDataExperimental(var_project_id, var_aligned_feature_id, var_formula_id, var_inchi_keydata_file = "result.txt") -#' result <- api_instance$features_api$GetStructureAnnotatedMsDataExperimental(var_project_id, var_aligned_feature_id, var_formula_id, var_inchi_key) +#' # result <- api_instance$GetStructureAnnotatedSpectralLibraryMatchExperimental(var_project_id, var_aligned_feature_id, var_match_iddata_file = "result.txt") +#' result <- api_instance$features_api$GetStructureAnnotatedSpectralLibraryMatchExperimental(var_project_id, var_aligned_feature_id, var_match_id) #' dput(result) #' #' @@ -518,13 +629,14 @@ #' var_formula_id <- "formula_id_example" # character | identifier of the requested formula result #' var_inchi_key <- "inchi_key_example" # character | 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation #' var_spectrum_index <- -1 # integer | index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) (Optional) +#' var_search_prepared <- FALSE # character | (Optional) #' -#' #EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. +#' #[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$GetStructureAnnotatedSpectrumExperimental(var_project_id, var_aligned_feature_id, var_formula_id, var_inchi_key, spectrum_index = var_spectrum_indexdata_file = "result.txt") -#' result <- api_instance$features_api$GetStructureAnnotatedSpectrumExperimental(var_project_id, var_aligned_feature_id, var_formula_id, var_inchi_key, spectrum_index = var_spectrum_index) +#' # result <- api_instance$GetStructureAnnotatedSpectrumExperimental(var_project_id, var_aligned_feature_id, var_formula_id, var_inchi_key, spectrum_index = var_spectrum_index, search_prepared = var_search_prepareddata_file = "result.txt") +#' result <- api_instance$features_api$GetStructureAnnotatedSpectrumExperimental(var_project_id, var_aligned_feature_id, var_formula_id, var_inchi_key, spectrum_index = var_spectrum_index, search_prepared = var_search_prepared) #' dput(result) #' #' @@ -600,6 +712,21 @@ #' dput(result) #' #' +#' #################### GetTagsForAlignedFeaturesExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to get from. +#' var_object_id <- "object_id_example" # character | object to get tags for. +#' +#' #[EXPERIMENTAL] Get all tags associated with this Object +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetTagsForAlignedFeaturesExperimental(var_project_id, var_object_iddata_file = "result.txt") +#' result <- api_instance$features_api$GetTagsForAlignedFeaturesExperimental(var_project_id, var_object_id) +#' dput(result) +#' +#' #' #################### GetTracesExperimental #################### #' #' library(Rsirius) @@ -607,7 +734,7 @@ #' var_aligned_feature_id <- "aligned_feature_id_example" # character | feature which intensities should be read out #' var_include_all <- FALSE # character | when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature. (Optional) #' -#' #EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +#' #[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId) #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. @@ -616,6 +743,19 @@ #' dput(result) #' #' +#' #################### RemoveTagFromAlignedFeatureExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to delete from. +#' var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) to delete tag from. +#' var_tag_name <- "tag_name_example" # character | name of the tag to delete. +#' +#' #[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space +#' api_instance <- rsirius_api$new() +#' +#' api_instance$features_api$RemoveTagFromAlignedFeatureExperimental(var_project_id, var_aligned_feature_id, var_tag_name) +#' +#' #' } #' @importFrom R6 R6Class #' @importFrom base64enc base64encode @@ -643,12 +783,12 @@ FeaturesApi <- R6::R6Class( #' @param project_id project-space to import into. #' @param feature_import the feature data to be imported #' @param profile (optional) profile describing the instrument used to measure the data. Used to merge spectra. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return array[AlignedFeature] - AddAlignedFeatures = function(project_id, feature_import, profile = NULL, opt_fields = list("none"), data_file = NULL, ...) { + AddAlignedFeatures = function(project_id, feature_import, profile = NULL, opt_fields = list(NULL), data_file = NULL, ...) { local_var_response <- self$AddAlignedFeaturesWithHttpInfo(project_id, feature_import, profile, opt_fields, data_file = data_file, ...) if (local_var_response$status_code >= 200 && local_var_response$status_code <= 299) { local_var_response$content @@ -667,12 +807,12 @@ FeaturesApi <- R6::R6Class( #' @param project_id project-space to import into. #' @param feature_import the feature data to be imported #' @param profile (optional) profile describing the instrument used to measure the data. Used to merge spectra. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (array[AlignedFeature]) with additional information such as HTTP status code, headers - AddAlignedFeaturesWithHttpInfo = function(project_id, feature_import, profile = NULL, opt_fields = list("none"), data_file = NULL, ...) { + AddAlignedFeaturesWithHttpInfo = function(project_id, feature_import, profile = NULL, opt_fields = list(NULL), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -702,8 +842,8 @@ FeaturesApi <- R6::R6Class( # explore for (query_item in `opt_fields`) { # validate enum values - if (!is.null(query_item) && !(query_item %in% c("none", "msData", "topAnnotations", "topAnnotationsDeNovo", "computedTools"))) { - stop("Invalid value for opt_fields when calling FeaturesApi$AddAlignedFeatures. Must be [none, msData, topAnnotations, topAnnotationsDeNovo, computedTools].") + if (!is.null(query_item) && !(query_item %in% c("none", "msData", "topAnnotationsSummary", "topAnnotations", "topAnnotationsDeNovo", "computedTools", "tags"))) { + stop("Invalid value for opt_fields when calling FeaturesApi$AddAlignedFeatures. Must be [none, msData, topAnnotationsSummary, topAnnotations, topAnnotationsDeNovo, computedTools, tags].") } query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) } @@ -769,15 +909,17 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Delete feature (aligned over runs) with the given identifier from the specified project-space. + #' [EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. #' - #' @param project_id project-space to delete from. - #' @param aligned_feature_id identifier of feature (aligned over runs) to delete. + #' @param project_id project-space to read from. + #' @param aligned_feature_id feature (aligned over runs) the structure candidates belong to. + #' @param smiles (optional) smiles (default value: "none") + #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' - #' @return void - DeleteAlignedFeature = function(project_id, aligned_feature_id, ...) { - local_var_response <- self$DeleteAlignedFeatureWithHttpInfo(project_id, aligned_feature_id, ...) + #' @return array[StructureCandidateFormula] + AddDeNovoStructureCandidate = function(project_id, aligned_feature_id, smiles = "none", data_file = NULL, ...) { + local_var_response <- self$AddDeNovoStructureCandidateWithHttpInfo(project_id, aligned_feature_id, smiles, 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) { @@ -790,14 +932,16 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Delete feature (aligned over runs) with the given identifier from the specified project-space. + #' [EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. #' - #' @param project_id project-space to delete from. - #' @param aligned_feature_id identifier of feature (aligned over runs) to delete. + #' @param project_id project-space to read from. + #' @param aligned_feature_id feature (aligned over runs) the structure candidates belong to. + #' @param smiles (optional) smiles (default value: "none") + #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' - #' @return API response (void) with additional information such as HTTP status code, headers - DeleteAlignedFeatureWithHttpInfo = function(project_id, aligned_feature_id, ...) { + #' @return API response (array[StructureCandidateFormula]) with additional information such as HTTP status code, headers + AddDeNovoStructureCandidateWithHttpInfo = function(project_id, aligned_feature_id, smiles = "none", data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -817,7 +961,10 @@ FeaturesApi <- R6::R6Class( - local_var_url_path <- "/api/projects/{projectId}/aligned-features/{alignedFeatureId}" + + query_params[["smiles"]] <- `smiles` + + local_var_url_path <- "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures" if (!missing(`project_id`)) { local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) } @@ -828,13 +975,13 @@ FeaturesApi <- R6::R6Class( # The Accept request HTTP header - local_var_accepts <- list() + 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", + method = "PUT", query_params = query_params, header_params = header_params, form_params = form_params, @@ -847,7 +994,18 @@ FeaturesApi <- R6::R6Class( ...) if (local_var_resp$status_code >= 200 && local_var_resp$status_code <= 299) { - local_var_resp$content <- NULL + # save response in a file + if (!is.null(data_file)) { + write(local_var_resp$response, data_file) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "array[StructureCandidateFormula]", 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) @@ -862,15 +1020,17 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Delete feature (aligned over runs) with the given identifier from the specified project-space. + #' [EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project #' - #' @param project_id project-space to delete from. - #' @param request_body + #' @param project_id project-space to add to. + #' @param aligned_feature_id run to add tags to. + #' @param tag tags to add. + #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' - #' @return void - DeleteAlignedFeatures = function(project_id, request_body, ...) { - local_var_response <- self$DeleteAlignedFeaturesWithHttpInfo(project_id, request_body, ...) + #' @return array[Tag] + AddTagsToAlignedFeatureExperimental = function(project_id, aligned_feature_id, tag, data_file = NULL, ...) { + local_var_response <- self$AddTagsToAlignedFeatureExperimentalWithHttpInfo(project_id, aligned_feature_id, tag, 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) { @@ -883,14 +1043,16 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Delete feature (aligned over runs) with the given identifier from the specified project-space. + #' [EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project #' - #' @param project_id project-space to delete from. - #' @param request_body + #' @param project_id project-space to add to. + #' @param aligned_feature_id run to add tags to. + #' @param tag tags to add. + #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' - #' @return API response (void) with additional information such as HTTP status code, headers - DeleteAlignedFeaturesWithHttpInfo = function(project_id, request_body, ...) { + #' @return API response (array[Tag]) with additional information such as HTTP status code, headers + AddTagsToAlignedFeatureExperimentalWithHttpInfo = function(project_id, aligned_feature_id, tag, data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -904,14 +1066,19 @@ FeaturesApi <- R6::R6Class( stop("Missing required parameter `project_id`.") } - if (missing(`request_body`)) { - stop("Missing required parameter `request_body`.") + if (missing(`aligned_feature_id`)) { + stop("Missing required parameter `aligned_feature_id`.") } + if (missing(`tag`)) { + stop("Missing required parameter `tag`.") + } - if (!is.null(`request_body`)) { - body.items <- paste(unlist(lapply(`request_body`, function(param) { + + + if (!is.null(`tag`)) { + body.items <- paste(unlist(lapply(`tag`, function(param) { param$toJSONString() })), collapse = ",") local_var_body <- paste0("[", body.items, "]") @@ -919,14 +1086,18 @@ FeaturesApi <- R6::R6Class( body <- NULL } - local_var_url_path <- "/api/projects/{projectId}/aligned-features/delete" + local_var_url_path <- "/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}" if (!missing(`project_id`)) { local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) } + if (!missing(`aligned_feature_id`)) { + local_var_url_path <- gsub("\\{alignedFeatureId\\}", URLencode(as.character(`aligned_feature_id`), reserved = TRUE), local_var_url_path) + } + # The Accept request HTTP header - local_var_accepts <- list() + local_var_accepts <- list("application/json") # The Content-Type representation header local_var_content_types <- list("application/json") @@ -945,7 +1116,18 @@ FeaturesApi <- R6::R6Class( ...) if (local_var_resp$status_code >= 200 && local_var_resp$status_code <= 299) { - local_var_resp$content <- NULL + # save response in a file + if (!is.null(data_file)) { + write(local_var_resp$response, data_file) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "array[Tag]", 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) @@ -960,16 +1142,15 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + #' Delete feature (aligned over runs) with the given identifier from the specified project-space. #' - #' @param project_id project-space to read from. - #' @param aligned_feature_id one feature that is considered the main feature of the adduct network - #' @param data_file (optional) name of the data file to save the result + #' @param project_id project-space to delete from. + #' @param aligned_feature_id identifier of feature (aligned over runs) to delete. #' @param ... Other optional arguments #' - #' @return TraceSetExperimental - GetAdductNetworkWithMergedTracesExperimental = function(project_id, aligned_feature_id, data_file = NULL, ...) { - local_var_response <- self$GetAdductNetworkWithMergedTracesExperimentalWithHttpInfo(project_id, aligned_feature_id, data_file = data_file, ...) + #' @return void + DeleteAlignedFeature = function(project_id, aligned_feature_id, ...) { + local_var_response <- self$DeleteAlignedFeatureWithHttpInfo(project_id, aligned_feature_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) { @@ -982,15 +1163,14 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + #' Delete feature (aligned over runs) with the given identifier from the specified project-space. #' - #' @param project_id project-space to read from. - #' @param aligned_feature_id one feature that is considered the main feature of the adduct network - #' @param data_file (optional) name of the data file to save the result + #' @param project_id project-space to delete from. + #' @param aligned_feature_id identifier of feature (aligned over runs) to delete. #' @param ... Other optional arguments #' - #' @return API response (TraceSetExperimental) with additional information such as HTTP status code, headers - GetAdductNetworkWithMergedTracesExperimentalWithHttpInfo = function(project_id, aligned_feature_id, data_file = NULL, ...) { + #' @return API response (void) with additional information such as HTTP status code, headers + DeleteAlignedFeatureWithHttpInfo = function(project_id, aligned_feature_id, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -1010,7 +1190,7 @@ FeaturesApi <- R6::R6Class( - local_var_url_path <- "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts" + local_var_url_path <- "/api/projects/{projectId}/aligned-features/{alignedFeatureId}" if (!missing(`project_id`)) { local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) } @@ -1021,13 +1201,13 @@ FeaturesApi <- R6::R6Class( # The Accept request HTTP header - local_var_accepts <- list("application/json") + 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 = "GET", + method = "DELETE", query_params = query_params, header_params = header_params, form_params = form_params, @@ -1040,18 +1220,7 @@ FeaturesApi <- R6::R6Class( ...) 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) - } - - deserialized_resp_obj <- tryCatch( - self$api_client$deserialize(local_var_resp$response_as_text(), "TraceSetExperimental", loadNamespace("Rsirius")), - error = function(e) { - stop("Failed to deserialize response") - } - ) - local_var_resp$content <- deserialized_resp_obj + 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) @@ -1066,17 +1235,15 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Get feature (aligned over runs) with the given identifier from the specified project-space. + #' Delete feature (aligned over runs) with the given identifier from the specified project-space. #' - #' @param project_id project-space to read from. - #' @param aligned_feature_id identifier of feature (aligned over runs) to access. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) - #' @param data_file (optional) name of the data file to save the result + #' @param project_id project-space to delete from. + #' @param request_body #' @param ... Other optional arguments #' - #' @return AlignedFeature - GetAlignedFeature = function(project_id, aligned_feature_id, opt_fields = list("none"), data_file = NULL, ...) { - local_var_response <- self$GetAlignedFeatureWithHttpInfo(project_id, aligned_feature_id, opt_fields, data_file = data_file, ...) + #' @return void + DeleteAlignedFeatures = function(project_id, request_body, ...) { + local_var_response <- self$DeleteAlignedFeaturesWithHttpInfo(project_id, request_body, ...) 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) { @@ -1089,16 +1256,14 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Get feature (aligned over runs) with the given identifier from the specified project-space. + #' Delete feature (aligned over runs) with the given identifier from the specified project-space. #' - #' @param project_id project-space to read from. - #' @param aligned_feature_id identifier of feature (aligned over runs) to access. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) - #' @param data_file (optional) name of the data file to save the result + #' @param project_id project-space to delete from. + #' @param request_body #' @param ... Other optional arguments #' - #' @return API response (AlignedFeature) with additional information such as HTTP status code, headers - GetAlignedFeatureWithHttpInfo = function(project_id, aligned_feature_id, opt_fields = list("none"), data_file = NULL, ...) { + #' @return API response (void) with additional information such as HTTP status code, headers + DeleteAlignedFeaturesWithHttpInfo = function(project_id, request_body, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -1112,19 +1277,232 @@ FeaturesApi <- R6::R6Class( stop("Missing required parameter `project_id`.") } - if (missing(`aligned_feature_id`)) { - stop("Missing required parameter `aligned_feature_id`.") + if (missing(`request_body`)) { + stop("Missing required parameter `request_body`.") } + if (!is.null(`request_body`)) { + body.items <- paste(unlist(lapply(`request_body`, function(param) { + param$toJSONString() + })), collapse = ",") + local_var_body <- paste0("[", body.items, "]") + } else { + body <- NULL + } - # explore - for (query_item in `opt_fields`) { - # validate enum values - if (!is.null(query_item) && !(query_item %in% c("none", "msData", "topAnnotations", "topAnnotationsDeNovo", "computedTools"))) { - stop("Invalid value for opt_fields when calling FeaturesApi$GetAlignedFeature. Must be [none, msData, topAnnotations, topAnnotationsDeNovo, computedTools].") - } + local_var_url_path <- "/api/projects/{projectId}/aligned-features/delete" + 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("application/json") + + local_var_resp <- self$api_client$CallApi(url = paste0(self$api_client$base_path, local_var_url_path), + method = "PUT", + 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 + } + }, + + #' @description + #' [EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network + #' + #' @param project_id project-space to read from. + #' @param aligned_feature_id one feature that is considered the main feature of the adduct network + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return TraceSetExperimental + GetAdductNetworkWithMergedTracesExperimental = function(project_id, aligned_feature_id, data_file = NULL, ...) { + local_var_response <- self$GetAdductNetworkWithMergedTracesExperimentalWithHttpInfo(project_id, aligned_feature_id, 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 + #' [EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network + #' + #' @param project_id project-space to read from. + #' @param aligned_feature_id one feature that is considered the main feature of the adduct network + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (TraceSetExperimental) with additional information such as HTTP status code, headers + GetAdductNetworkWithMergedTracesExperimentalWithHttpInfo = function(project_id, aligned_feature_id, 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`.") + } + + if (missing(`aligned_feature_id`)) { + stop("Missing required parameter `aligned_feature_id`.") + } + + + + local_var_url_path <- "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`aligned_feature_id`)) { + local_var_url_path <- gsub("\\{alignedFeatureId\\}", URLencode(as.character(`aligned_feature_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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "TraceSetExperimental", 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 feature (aligned over runs) with the given identifier from the specified project-space. + #' + #' @param project_id project-space to read from. + #' @param aligned_feature_id identifier of feature (aligned over runs) to access. + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return AlignedFeature + GetAlignedFeature = function(project_id, aligned_feature_id, ms_data_search_prepared = FALSE, opt_fields = list(NULL), data_file = NULL, ...) { + local_var_response <- self$GetAlignedFeatureWithHttpInfo(project_id, aligned_feature_id, ms_data_search_prepared, opt_fields, 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 feature (aligned over runs) with the given identifier from the specified project-space. + #' + #' @param project_id project-space to read from. + #' @param aligned_feature_id identifier of feature (aligned over runs) to access. + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (AlignedFeature) with additional information such as HTTP status code, headers + GetAlignedFeatureWithHttpInfo = function(project_id, aligned_feature_id, ms_data_search_prepared = FALSE, opt_fields = list(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`.") + } + + if (missing(`aligned_feature_id`)) { + stop("Missing required parameter `aligned_feature_id`.") + } + + + + + + query_params[["msDataSearchPrepared"]] <- `ms_data_search_prepared` + + # explore + for (query_item in `opt_fields`) { + # validate enum values + if (!is.null(query_item) && !(query_item %in% c("none", "msData", "topAnnotationsSummary", "topAnnotations", "topAnnotationsDeNovo", "computedTools", "tags"))) { + stop("Invalid value for opt_fields when calling FeaturesApi$GetAlignedFeature. Must be [none, msData, topAnnotationsSummary, topAnnotations, topAnnotationsDeNovo, computedTools, tags].") + } query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) } @@ -1183,17 +1561,124 @@ FeaturesApi <- R6::R6Class( } }, + #' @description + #' [EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId) + #' + #' @param project_id project-space to read from. + #' @param aligned_feature_id identifier of feature (aligned over runs) to access. + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return AlignedFeatureQualityExperimental + GetAlignedFeatureQualityExperimental = function(project_id, aligned_feature_id, data_file = NULL, ...) { + local_var_response <- self$GetAlignedFeatureQualityExperimentalWithHttpInfo(project_id, aligned_feature_id, 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 + #' [EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId) + #' + #' @param project_id project-space to read from. + #' @param aligned_feature_id identifier of feature (aligned over runs) to access. + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (AlignedFeatureQualityExperimental) with additional information such as HTTP status code, headers + GetAlignedFeatureQualityExperimentalWithHttpInfo = function(project_id, aligned_feature_id, 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`.") + } + + if (missing(`aligned_feature_id`)) { + stop("Missing required parameter `aligned_feature_id`.") + } + + + + local_var_url_path <- "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`aligned_feature_id`)) { + local_var_url_path <- gsub("\\{alignedFeatureId\\}", URLencode(as.character(`aligned_feature_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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "AlignedFeatureQualityExperimental", 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 all available features (aligned over runs) in the given project-space. #' #' @param project_id project-space to read from. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return array[AlignedFeature] - GetAlignedFeatures = function(project_id, opt_fields = list("none"), data_file = NULL, ...) { - local_var_response <- self$GetAlignedFeaturesWithHttpInfo(project_id, opt_fields, data_file = data_file, ...) + GetAlignedFeatures = function(project_id, ms_data_search_prepared = FALSE, opt_fields = list(NULL), data_file = NULL, ...) { + local_var_response <- self$GetAlignedFeaturesWithHttpInfo(project_id, ms_data_search_prepared, opt_fields, 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) { @@ -1209,12 +1694,13 @@ FeaturesApi <- R6::R6Class( #' Get all available features (aligned over runs) in the given project-space. #' #' @param project_id project-space to read from. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (array[AlignedFeature]) with additional information such as HTTP status code, headers - GetAlignedFeaturesWithHttpInfo = function(project_id, opt_fields = list("none"), data_file = NULL, ...) { + GetAlignedFeaturesWithHttpInfo = function(project_id, ms_data_search_prepared = FALSE, opt_fields = list(NULL), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -1230,11 +1716,14 @@ FeaturesApi <- R6::R6Class( + + query_params[["msDataSearchPrepared"]] <- `ms_data_search_prepared` + # explore for (query_item in `opt_fields`) { # validate enum values - if (!is.null(query_item) && !(query_item %in% c("none", "msData", "topAnnotations", "topAnnotationsDeNovo", "computedTools"))) { - stop("Invalid value for opt_fields when calling FeaturesApi$GetAlignedFeatures. Must be [none, msData, topAnnotations, topAnnotationsDeNovo, computedTools].") + if (!is.null(query_item) && !(query_item %in% c("none", "msData", "topAnnotationsSummary", "topAnnotations", "topAnnotationsDeNovo", "computedTools", "tags"))) { + stop("Invalid value for opt_fields when calling FeaturesApi$GetAlignedFeatures. Must be [none, msData, topAnnotationsSummary, topAnnotations, topAnnotationsDeNovo, computedTools, tags].") } query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) } @@ -1291,19 +1780,20 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Get all available features (aligned over runs) in the given project-space. + #' [EXPERIMENTAL] Get features (aligned over runs) by tag group #' - #' @param project_id project-space to read from. + #' @param project_id project-space to delete from. + #' @param group_name tag group name. #' @param page (optional) Zero-based page index (0..N) (default value: 0) #' @param size (optional) The size of the page to be returned (default value: 20) #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return PagedModelAlignedFeature - GetAlignedFeaturesPaged = function(project_id, page = 0, size = 20, sort = NULL, opt_fields = list("none"), data_file = NULL, ...) { - local_var_response <- self$GetAlignedFeaturesPagedWithHttpInfo(project_id, page, size, sort, opt_fields, data_file = data_file, ...) + GetAlignedFeaturesByGroupExperimental = function(project_id, group_name, page = 0, size = 20, sort = NULL, opt_fields = list(NULL), data_file = NULL, ...) { + local_var_response <- self$GetAlignedFeaturesByGroupExperimentalWithHttpInfo(project_id, group_name, page, size, sort, opt_fields, 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) { @@ -1316,18 +1806,19 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Get all available features (aligned over runs) in the given project-space. + #' [EXPERIMENTAL] Get features (aligned over runs) by tag group #' - #' @param project_id project-space to read from. + #' @param project_id project-space to delete from. + #' @param group_name tag group name. #' @param page (optional) Zero-based page index (0..N) (default value: 0) #' @param size (optional) The size of the page to be returned (default value: 20) #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (PagedModelAlignedFeature) with additional information such as HTTP status code, headers - GetAlignedFeaturesPagedWithHttpInfo = function(project_id, page = 0, size = 20, sort = NULL, opt_fields = list("none"), data_file = NULL, ...) { + GetAlignedFeaturesByGroupExperimentalWithHttpInfo = function(project_id, group_name, page = 0, size = 20, sort = NULL, opt_fields = list(NULL), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -1341,17 +1832,24 @@ FeaturesApi <- R6::R6Class( stop("Missing required parameter `project_id`.") } + if (missing(`group_name`)) { + stop("Missing required parameter `group_name`.") + } + + if (`page` < 0) { - stop("Invalid value for `page` when calling FeaturesApi$GetAlignedFeaturesPaged, must be bigger than or equal to 0.") + stop("Invalid value for `page` when calling FeaturesApi$GetAlignedFeaturesByGroupExperimental, must be bigger than or equal to 0.") } if (`size` < 1) { - stop("Invalid value for `size` when calling FeaturesApi$GetAlignedFeaturesPaged, must be bigger than or equal to 1.") + stop("Invalid value for `size` when calling FeaturesApi$GetAlignedFeaturesByGroupExperimental, must be bigger than or equal to 1.") } + query_params[["groupName"]] <- `group_name` + query_params[["page"]] <- `page` query_params[["size"]] <- `size` @@ -1364,13 +1862,149 @@ FeaturesApi <- R6::R6Class( # explore for (query_item in `opt_fields`) { # validate enum values - if (!is.null(query_item) && !(query_item %in% c("none", "msData", "topAnnotations", "topAnnotationsDeNovo", "computedTools"))) { - stop("Invalid value for opt_fields when calling FeaturesApi$GetAlignedFeaturesPaged. Must be [none, msData, topAnnotations, topAnnotationsDeNovo, computedTools].") + if (!is.null(query_item) && !(query_item %in% c("none", "msData", "topAnnotationsSummary", "topAnnotations", "topAnnotationsDeNovo", "computedTools", "tags"))) { + stop("Invalid value for opt_fields when calling FeaturesApi$GetAlignedFeaturesByGroupExperimental. Must be [none, msData, topAnnotationsSummary, topAnnotations, topAnnotationsDeNovo, computedTools, tags].") } query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) } - local_var_url_path <- "/api/projects/{projectId}/aligned-features/page" + local_var_url_path <- "/api/projects/{projectId}/aligned-features/grouped" + 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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "PagedModelAlignedFeature", 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 + #' [EXPERIMENTAL] Get features (aligned over runs) by tag + #' + #' @param project_id project space to get features (aligned over runs) from. + #' @param filter (optional) tag filter. (default value: "") + #' @param page (optional) Zero-based page index (0..N) (default value: 0) + #' @param size (optional) The size of the page to be returned (default value: 20) + #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: []) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return PagedModelAlignedFeature + GetAlignedFeaturesByTagExperimental = function(project_id, filter = "", page = 0, size = 20, sort = NULL, opt_fields = list(), data_file = NULL, ...) { + local_var_response <- self$GetAlignedFeaturesByTagExperimentalWithHttpInfo(project_id, filter, page, size, sort, opt_fields, 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 + #' [EXPERIMENTAL] Get features (aligned over runs) by tag + #' + #' @param project_id project space to get features (aligned over runs) from. + #' @param filter (optional) tag filter. (default value: "") + #' @param page (optional) Zero-based page index (0..N) (default value: 0) + #' @param size (optional) The size of the page to be returned (default value: 20) + #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: []) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (PagedModelAlignedFeature) with additional information such as HTTP status code, headers + GetAlignedFeaturesByTagExperimentalWithHttpInfo = function(project_id, filter = "", page = 0, size = 20, sort = NULL, opt_fields = list(), 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`.") + } + + + + if (`page` < 0) { + stop("Invalid value for `page` when calling FeaturesApi$GetAlignedFeaturesByTagExperimental, must be bigger than or equal to 0.") + } + + if (`size` < 1) { + stop("Invalid value for `size` when calling FeaturesApi$GetAlignedFeaturesByTagExperimental, must be bigger than or equal to 1.") + } + + + + query_params[["filter"]] <- `filter` + + query_params[["page"]] <- `page` + + query_params[["size"]] <- `size` + + # explore + for (query_item in `sort`) { + query_params[["sort"]] <- c(query_params[["sort"]], list(`sort` = query_item)) + } + + # explore + for (query_item in `opt_fields`) { + # validate enum values + if (!is.null(query_item) && !(query_item %in% c("none", "msData", "topAnnotationsSummary", "topAnnotations", "topAnnotationsDeNovo", "computedTools", "tags"))) { + stop("Invalid value for opt_fields when calling FeaturesApi$GetAlignedFeaturesByTagExperimental. Must be [none, msData, topAnnotationsSummary, topAnnotations, topAnnotationsDeNovo, computedTools, tags].") + } + query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) + } + + local_var_url_path <- "/api/projects/{projectId}/aligned-features/tagged" if (!missing(`project_id`)) { local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) } @@ -1422,16 +2056,20 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + #' Get all available features (aligned over runs) in the given project-space. #' #' @param project_id project-space to read from. - #' @param aligned_feature_id identifier of feature (aligned over runs) to access. + #' @param page (optional) Zero-based page index (0..N) (default value: 0) + #' @param size (optional) The size of the page to be returned (default value: 20) + #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' - #' @return AlignedFeatureQualityExperimental - GetAlignedFeaturesQualityExperimental = function(project_id, aligned_feature_id, data_file = NULL, ...) { - local_var_response <- self$GetAlignedFeaturesQualityExperimentalWithHttpInfo(project_id, aligned_feature_id, data_file = data_file, ...) + #' @return PagedModelAlignedFeature + GetAlignedFeaturesPaged = function(project_id, page = 0, size = 20, sort = NULL, ms_data_search_prepared = FALSE, opt_fields = list(NULL), data_file = NULL, ...) { + local_var_response <- self$GetAlignedFeaturesPagedWithHttpInfo(project_id, page, size, sort, ms_data_search_prepared, opt_fields, 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) { @@ -1444,15 +2082,19 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + #' Get all available features (aligned over runs) in the given project-space. #' #' @param project_id project-space to read from. - #' @param aligned_feature_id identifier of feature (aligned over runs) to access. + #' @param page (optional) Zero-based page index (0..N) (default value: 0) + #' @param size (optional) The size of the page to be returned (default value: 20) + #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' - #' @return API response (AlignedFeatureQualityExperimental) with additional information such as HTTP status code, headers - GetAlignedFeaturesQualityExperimentalWithHttpInfo = function(project_id, aligned_feature_id, data_file = NULL, ...) { + #' @return API response (PagedModelAlignedFeature) with additional information such as HTTP status code, headers + GetAlignedFeaturesPagedWithHttpInfo = function(project_id, page = 0, size = 20, sort = NULL, ms_data_search_prepared = FALSE, opt_fields = list(NULL), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -1466,21 +2108,43 @@ FeaturesApi <- R6::R6Class( stop("Missing required parameter `project_id`.") } - if (missing(`aligned_feature_id`)) { - stop("Missing required parameter `aligned_feature_id`.") + + if (`page` < 0) { + stop("Invalid value for `page` when calling FeaturesApi$GetAlignedFeaturesPaged, must be bigger than or equal to 0.") + } + + if (`size` < 1) { + stop("Invalid value for `size` when calling FeaturesApi$GetAlignedFeaturesPaged, must be bigger than or equal to 1.") + } + + + + + query_params[["page"]] <- `page` + + query_params[["size"]] <- `size` + + # explore + for (query_item in `sort`) { + query_params[["sort"]] <- c(query_params[["sort"]], list(`sort` = query_item)) } + query_params[["msDataSearchPrepared"]] <- `ms_data_search_prepared` + # explore + for (query_item in `opt_fields`) { + # validate enum values + if (!is.null(query_item) && !(query_item %in% c("none", "msData", "topAnnotationsSummary", "topAnnotations", "topAnnotationsDeNovo", "computedTools", "tags"))) { + stop("Invalid value for opt_fields when calling FeaturesApi$GetAlignedFeaturesPaged. Must be [none, msData, topAnnotationsSummary, topAnnotations, topAnnotationsDeNovo, computedTools, tags].") + } + query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) + } - local_var_url_path <- "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report" + local_var_url_path <- "/api/projects/{projectId}/aligned-features/page" if (!missing(`project_id`)) { local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) } - if (!missing(`aligned_feature_id`)) { - local_var_url_path <- gsub("\\{alignedFeatureId\\}", URLencode(as.character(`aligned_feature_id`), reserved = TRUE), local_var_url_path) - } - # The Accept request HTTP header local_var_accepts <- list("application/json") @@ -1508,7 +2172,7 @@ FeaturesApi <- R6::R6Class( } deserialized_resp_obj <- tryCatch( - self$api_client$deserialize(local_var_resp$response_as_text(), "AlignedFeatureQualityExperimental", loadNamespace("Rsirius")), + self$api_client$deserialize(local_var_resp$response_as_text(), "PagedModelAlignedFeature", loadNamespace("Rsirius")), error = function(e) { stop("Failed to deserialize response") } @@ -1528,7 +2192,7 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Best matching compound classes, Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, + #' Return Best matching compound classes for given formulaId #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. @@ -1551,7 +2215,7 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Best matching compound classes, Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, + #' Return Best matching compound classes for given formulaId #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. @@ -1818,8 +2482,8 @@ FeaturesApi <- R6::R6Class( # explore for (query_item in `opt_fields`) { # validate enum values - if (!is.null(query_item) && !(query_item %in% c("none", "fingerprint", "dbLinks", "libraryMatches"))) { - stop("Invalid value for opt_fields when calling FeaturesApi$GetDeNovoStructureCandidates. Must be [none, fingerprint, dbLinks, libraryMatches].") + if (!is.null(query_item) && !(query_item %in% c("none", "fingerprint", "dbLinks", "libraryMatches", "structureSvg"))) { + stop("Invalid value for opt_fields when calling FeaturesApi$GetDeNovoStructureCandidates. Must be [none, fingerprint, dbLinks, libraryMatches, structureSvg].") } query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) } @@ -1885,12 +2549,12 @@ FeaturesApi <- R6::R6Class( #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. #' @param formula_id identifier of the requested formula result - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return array[StructureCandidateScored] - GetDeNovoStructureCandidatesByFormula = function(project_id, aligned_feature_id, formula_id, opt_fields = list("none"), data_file = NULL, ...) { + GetDeNovoStructureCandidatesByFormula = function(project_id, aligned_feature_id, formula_id, opt_fields = list(NULL), data_file = NULL, ...) { local_var_response <- self$GetDeNovoStructureCandidatesByFormulaWithHttpInfo(project_id, aligned_feature_id, formula_id, opt_fields, data_file = data_file, ...) if (local_var_response$status_code >= 200 && local_var_response$status_code <= 299) { local_var_response$content @@ -1909,12 +2573,12 @@ FeaturesApi <- R6::R6Class( #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. #' @param formula_id identifier of the requested formula result - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (array[StructureCandidateScored]) with additional information such as HTTP status code, headers - GetDeNovoStructureCandidatesByFormulaWithHttpInfo = function(project_id, aligned_feature_id, formula_id, opt_fields = list("none"), data_file = NULL, ...) { + GetDeNovoStructureCandidatesByFormulaWithHttpInfo = function(project_id, aligned_feature_id, formula_id, opt_fields = list(NULL), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -1943,8 +2607,8 @@ FeaturesApi <- R6::R6Class( # explore for (query_item in `opt_fields`) { # validate enum values - if (!is.null(query_item) && !(query_item %in% c("none", "fingerprint", "dbLinks", "libraryMatches"))) { - stop("Invalid value for opt_fields when calling FeaturesApi$GetDeNovoStructureCandidatesByFormula. Must be [none, fingerprint, dbLinks, libraryMatches].") + if (!is.null(query_item) && !(query_item %in% c("none", "fingerprint", "dbLinks", "libraryMatches", "structureSvg"))) { + stop("Invalid value for opt_fields when calling FeaturesApi$GetDeNovoStructureCandidatesByFormula. Must be [none, fingerprint, dbLinks, libraryMatches, structureSvg].") } query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) } @@ -2017,12 +2681,12 @@ FeaturesApi <- R6::R6Class( #' @param page (optional) Zero-based page index (0..N) (default value: 0) #' @param size (optional) The size of the page to be returned (default value: 20) #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return PagedModelStructureCandidateScored - GetDeNovoStructureCandidatesByFormulaPaged = function(project_id, aligned_feature_id, formula_id, page = 0, size = 20, sort = NULL, opt_fields = list("none"), data_file = NULL, ...) { + GetDeNovoStructureCandidatesByFormulaPaged = function(project_id, aligned_feature_id, formula_id, page = 0, size = 20, sort = NULL, opt_fields = list(NULL), data_file = NULL, ...) { local_var_response <- self$GetDeNovoStructureCandidatesByFormulaPagedWithHttpInfo(project_id, aligned_feature_id, formula_id, page, size, sort, opt_fields, data_file = data_file, ...) if (local_var_response$status_code >= 200 && local_var_response$status_code <= 299) { local_var_response$content @@ -2044,12 +2708,12 @@ FeaturesApi <- R6::R6Class( #' @param page (optional) Zero-based page index (0..N) (default value: 0) #' @param size (optional) The size of the page to be returned (default value: 20) #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (PagedModelStructureCandidateScored) with additional information such as HTTP status code, headers - GetDeNovoStructureCandidatesByFormulaPagedWithHttpInfo = function(project_id, aligned_feature_id, formula_id, page = 0, size = 20, sort = NULL, opt_fields = list("none"), data_file = NULL, ...) { + GetDeNovoStructureCandidatesByFormulaPagedWithHttpInfo = function(project_id, aligned_feature_id, formula_id, page = 0, size = 20, sort = NULL, opt_fields = list(NULL), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -2096,8 +2760,8 @@ FeaturesApi <- R6::R6Class( # explore for (query_item in `opt_fields`) { # validate enum values - if (!is.null(query_item) && !(query_item %in% c("none", "fingerprint", "dbLinks", "libraryMatches"))) { - stop("Invalid value for opt_fields when calling FeaturesApi$GetDeNovoStructureCandidatesByFormulaPaged. Must be [none, fingerprint, dbLinks, libraryMatches].") + if (!is.null(query_item) && !(query_item %in% c("none", "fingerprint", "dbLinks", "libraryMatches", "structureSvg"))) { + stop("Invalid value for opt_fields when calling FeaturesApi$GetDeNovoStructureCandidatesByFormulaPaged. Must be [none, fingerprint, dbLinks, libraryMatches, structureSvg].") } query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) } @@ -2169,12 +2833,12 @@ FeaturesApi <- R6::R6Class( #' @param page (optional) Zero-based page index (0..N) (default value: 0) #' @param size (optional) The size of the page to be returned (default value: 20) #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return PagedModelStructureCandidateFormula - GetDeNovoStructureCandidatesPaged = function(project_id, aligned_feature_id, page = 0, size = 20, sort = NULL, opt_fields = list("none"), data_file = NULL, ...) { + GetDeNovoStructureCandidatesPaged = function(project_id, aligned_feature_id, page = 0, size = 20, sort = NULL, opt_fields = list(NULL), data_file = NULL, ...) { local_var_response <- self$GetDeNovoStructureCandidatesPagedWithHttpInfo(project_id, aligned_feature_id, page, size, sort, opt_fields, data_file = data_file, ...) if (local_var_response$status_code >= 200 && local_var_response$status_code <= 299) { local_var_response$content @@ -2195,12 +2859,12 @@ FeaturesApi <- R6::R6Class( #' @param page (optional) Zero-based page index (0..N) (default value: 0) #' @param size (optional) The size of the page to be returned (default value: 20) #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (PagedModelStructureCandidateFormula) with additional information such as HTTP status code, headers - GetDeNovoStructureCandidatesPagedWithHttpInfo = function(project_id, aligned_feature_id, page = 0, size = 20, sort = NULL, opt_fields = list("none"), data_file = NULL, ...) { + GetDeNovoStructureCandidatesPagedWithHttpInfo = function(project_id, aligned_feature_id, page = 0, size = 20, sort = NULL, opt_fields = list(NULL), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -2242,8 +2906,8 @@ FeaturesApi <- R6::R6Class( # explore for (query_item in `opt_fields`) { # validate enum values - if (!is.null(query_item) && !(query_item %in% c("none", "fingerprint", "dbLinks", "libraryMatches"))) { - stop("Invalid value for opt_fields when calling FeaturesApi$GetDeNovoStructureCandidatesPaged. Must be [none, fingerprint, dbLinks, libraryMatches].") + if (!is.null(query_item) && !(query_item %in% c("none", "fingerprint", "dbLinks", "libraryMatches", "structureSvg"))) { + stop("Invalid value for opt_fields when calling FeaturesApi$GetDeNovoStructureCandidatesPaged. Must be [none, fingerprint, dbLinks, libraryMatches, structureSvg].") } query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) } @@ -2304,7 +2968,110 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier This fingerprint is used to perform structure database search and predict compound classes. + #' [EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId) + #' + #' @param project_id project-space to read from. + #' @param type (optional) quantification type. (default value: "APEX_HEIGHT") + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return QuantTableExperimental + GetFeatureQuantTableExperimental = function(project_id, type = "APEX_HEIGHT", data_file = NULL, ...) { + local_var_response <- self$GetFeatureQuantTableExperimentalWithHttpInfo(project_id, type, 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 + #' [EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId) + #' + #' @param project_id project-space to read from. + #' @param type (optional) quantification type. (default value: "APEX_HEIGHT") + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (QuantTableExperimental) with additional information such as HTTP status code, headers + GetFeatureQuantTableExperimentalWithHttpInfo = function(project_id, type = "APEX_HEIGHT", 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`.") + } + + + + if (!is.null(`type`) && !(`type` %in% c("APEX_INTENSITY", "AREA_UNDER_CURVE"))) { + stop("Invalid value for type when calling FeaturesApi$GetFeatureQuantTableExperimental. Must be [APEX_INTENSITY, AREA_UNDER_CURVE].") + } + query_params[["type"]] <- `type` + + local_var_url_path <- "/api/projects/{projectId}/aligned-features/quant-table" + 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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "QuantTableExperimental", 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 + #' Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId) #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. @@ -2327,7 +3094,7 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier This fingerprint is used to perform structure database search and predict compound classes. + #' Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId) #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. @@ -2421,17 +3188,18 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. + #' Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. #' @param formula_id identifier of the requested formula result + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return AnnotatedMsMsData - GetFormulaAnnotatedMsMsData = function(project_id, aligned_feature_id, formula_id, data_file = NULL, ...) { - local_var_response <- self$GetFormulaAnnotatedMsMsDataWithHttpInfo(project_id, aligned_feature_id, formula_id, data_file = data_file, ...) + GetFormulaAnnotatedMsMsData = function(project_id, aligned_feature_id, formula_id, ms_data_search_prepared = FALSE, data_file = NULL, ...) { + local_var_response <- self$GetFormulaAnnotatedMsMsDataWithHttpInfo(project_id, aligned_feature_id, formula_id, ms_data_search_prepared, 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) { @@ -2444,16 +3212,17 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. + #' Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. #' @param formula_id identifier of the requested formula result + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (AnnotatedMsMsData) with additional information such as HTTP status code, headers - GetFormulaAnnotatedMsMsDataWithHttpInfo = function(project_id, aligned_feature_id, formula_id, data_file = NULL, ...) { + GetFormulaAnnotatedMsMsDataWithHttpInfo = function(project_id, aligned_feature_id, formula_id, ms_data_search_prepared = FALSE, data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -2478,6 +3247,9 @@ FeaturesApi <- R6::R6Class( + + query_params[["msDataSearchPrepared"]] <- `ms_data_search_prepared` + local_var_url_path <- "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata" if (!missing(`project_id`)) { local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) @@ -2538,18 +3310,19 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. + #' Returns a fragmentation spectrum (e #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. #' @param formula_id identifier of the requested formula result #' @param spectrum_index (optional) index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) (default value: -1) + #' @param search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return AnnotatedSpectrum - GetFormulaAnnotatedSpectrum = function(project_id, aligned_feature_id, formula_id, spectrum_index = -1, data_file = NULL, ...) { - local_var_response <- self$GetFormulaAnnotatedSpectrumWithHttpInfo(project_id, aligned_feature_id, formula_id, spectrum_index, data_file = data_file, ...) + GetFormulaAnnotatedSpectrum = function(project_id, aligned_feature_id, formula_id, spectrum_index = -1, search_prepared = FALSE, data_file = NULL, ...) { + local_var_response <- self$GetFormulaAnnotatedSpectrumWithHttpInfo(project_id, aligned_feature_id, formula_id, spectrum_index, search_prepared, 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) { @@ -2562,17 +3335,18 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. + #' Returns a fragmentation spectrum (e #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. #' @param formula_id identifier of the requested formula result #' @param spectrum_index (optional) index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) (default value: -1) + #' @param search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (AnnotatedSpectrum) with additional information such as HTTP status code, headers - GetFormulaAnnotatedSpectrumWithHttpInfo = function(project_id, aligned_feature_id, formula_id, spectrum_index = -1, data_file = NULL, ...) { + GetFormulaAnnotatedSpectrumWithHttpInfo = function(project_id, aligned_feature_id, formula_id, spectrum_index = -1, search_prepared = FALSE, data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -2598,8 +3372,11 @@ FeaturesApi <- R6::R6Class( + query_params[["spectrumIndex"]] <- `spectrum_index` + query_params[["searchPrepared"]] <- `search_prepared` + local_var_url_path <- "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum" if (!missing(`project_id`)) { local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) @@ -2665,13 +3442,14 @@ FeaturesApi <- R6::R6Class( #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. #' @param formula_id identifier of the requested formula result - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return FormulaCandidate - GetFormulaCandidate = function(project_id, aligned_feature_id, formula_id, opt_fields = list("none"), data_file = NULL, ...) { - local_var_response <- self$GetFormulaCandidateWithHttpInfo(project_id, aligned_feature_id, formula_id, opt_fields, data_file = data_file, ...) + GetFormulaCandidate = function(project_id, aligned_feature_id, formula_id, ms_data_search_prepared = FALSE, opt_fields = list(NULL), data_file = NULL, ...) { + local_var_response <- self$GetFormulaCandidateWithHttpInfo(project_id, aligned_feature_id, formula_id, ms_data_search_prepared, opt_fields, 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) { @@ -2689,12 +3467,13 @@ FeaturesApi <- R6::R6Class( #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. #' @param formula_id identifier of the requested formula result - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (FormulaCandidate) with additional information such as HTTP status code, headers - GetFormulaCandidateWithHttpInfo = function(project_id, aligned_feature_id, formula_id, opt_fields = list("none"), data_file = NULL, ...) { + GetFormulaCandidateWithHttpInfo = function(project_id, aligned_feature_id, formula_id, ms_data_search_prepared = FALSE, opt_fields = list(NULL), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -2720,6 +3499,9 @@ FeaturesApi <- R6::R6Class( + + query_params[["msDataSearchPrepared"]] <- `ms_data_search_prepared` + # explore for (query_item in `opt_fields`) { # validate enum values @@ -2793,13 +3575,14 @@ FeaturesApi <- R6::R6Class( #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return array[FormulaCandidate] - GetFormulaCandidates = function(project_id, aligned_feature_id, opt_fields = list("none"), data_file = NULL, ...) { - local_var_response <- self$GetFormulaCandidatesWithHttpInfo(project_id, aligned_feature_id, opt_fields, data_file = data_file, ...) + GetFormulaCandidates = function(project_id, aligned_feature_id, ms_data_search_prepared = FALSE, opt_fields = list("none"), data_file = NULL, ...) { + local_var_response <- self$GetFormulaCandidatesWithHttpInfo(project_id, aligned_feature_id, ms_data_search_prepared, opt_fields, 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) { @@ -2816,12 +3599,13 @@ FeaturesApi <- R6::R6Class( #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (array[FormulaCandidate]) with additional information such as HTTP status code, headers - GetFormulaCandidatesWithHttpInfo = function(project_id, aligned_feature_id, opt_fields = list("none"), data_file = NULL, ...) { + GetFormulaCandidatesWithHttpInfo = function(project_id, aligned_feature_id, ms_data_search_prepared = FALSE, opt_fields = list("none"), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -2842,6 +3626,9 @@ FeaturesApi <- R6::R6Class( + + query_params[["msDataSearchPrepared"]] <- `ms_data_search_prepared` + # explore for (query_item in `opt_fields`) { # validate enum values @@ -2914,13 +3701,14 @@ FeaturesApi <- R6::R6Class( #' @param page (optional) Zero-based page index (0..N) (default value: 0) #' @param size (optional) The size of the page to be returned (default value: 20) #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return PagedModelFormulaCandidate - GetFormulaCandidatesPaged = function(project_id, aligned_feature_id, page = 0, size = 20, sort = NULL, opt_fields = list("none"), data_file = NULL, ...) { - local_var_response <- self$GetFormulaCandidatesPagedWithHttpInfo(project_id, aligned_feature_id, page, size, sort, opt_fields, data_file = data_file, ...) + GetFormulaCandidatesPaged = function(project_id, aligned_feature_id, page = 0, size = 20, sort = NULL, ms_data_search_prepared = FALSE, opt_fields = list(NULL), data_file = NULL, ...) { + local_var_response <- self$GetFormulaCandidatesPagedWithHttpInfo(project_id, aligned_feature_id, page, size, sort, ms_data_search_prepared, opt_fields, 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) { @@ -2940,12 +3728,13 @@ FeaturesApi <- R6::R6Class( #' @param page (optional) Zero-based page index (0..N) (default value: 0) #' @param size (optional) The size of the page to be returned (default value: 20) #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (PagedModelFormulaCandidate) with additional information such as HTTP status code, headers - GetFormulaCandidatesPagedWithHttpInfo = function(project_id, aligned_feature_id, page = 0, size = 20, sort = NULL, opt_fields = list("none"), data_file = NULL, ...) { + GetFormulaCandidatesPagedWithHttpInfo = function(project_id, aligned_feature_id, page = 0, size = 20, sort = NULL, ms_data_search_prepared = FALSE, opt_fields = list(NULL), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -2975,6 +3764,7 @@ FeaturesApi <- R6::R6Class( + query_params[["page"]] <- `page` query_params[["size"]] <- `size` @@ -2984,6 +3774,8 @@ FeaturesApi <- R6::R6Class( query_params[["sort"]] <- c(query_params[["sort"]], list(`sort` = query_item)) } + query_params[["msDataSearchPrepared"]] <- `ms_data_search_prepared` + # explore for (query_item in `opt_fields`) { # validate enum values @@ -3049,7 +3841,7 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Returns fragmentation tree (SIRIUS) for the given formula result identifier This tree is used to rank formula candidates (treeScore). + #' Returns fragmentation tree (SIRIUS) for the given formula result identifier #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. @@ -3072,7 +3864,7 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Returns fragmentation tree (SIRIUS) for the given formula result identifier This tree is used to rank formula candidates (treeScore). + #' Returns fragmentation tree (SIRIUS) for the given formula result identifier #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. @@ -3166,7 +3958,7 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. + #' Returns Isotope pattern information for given formulaId #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. @@ -3189,7 +3981,7 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. + #' Returns Isotope pattern information for given formulaId #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. @@ -3283,7 +4075,7 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Returns Lipid annotation (ElGordo) for the given formula result identifier. + #' Returns Lipid annotation (ElGordo) for the given formulaId #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. @@ -3306,7 +4098,7 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Returns Lipid annotation (ElGordo) for the given formula result identifier. + #' Returns Lipid annotation (ElGordo) for the given formulaId #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. @@ -3403,13 +4195,14 @@ FeaturesApi <- R6::R6Class( #' Mass Spec data (input data) for the given 'alignedFeatureId' . #' #' @param project_id project-space to read from. - #' @param aligned_feature_id feature (aligned over runs) the Mass Spec data belong sto. + #' @param aligned_feature_id feature (aligned over runs) the Mass Spec data belongs to. + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return MsData - GetMsData = function(project_id, aligned_feature_id, data_file = NULL, ...) { - local_var_response <- self$GetMsDataWithHttpInfo(project_id, aligned_feature_id, data_file = data_file, ...) + GetMsData = function(project_id, aligned_feature_id, ms_data_search_prepared = FALSE, data_file = NULL, ...) { + local_var_response <- self$GetMsDataWithHttpInfo(project_id, aligned_feature_id, ms_data_search_prepared, 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) { @@ -3425,12 +4218,13 @@ FeaturesApi <- R6::R6Class( #' Mass Spec data (input data) for the given 'alignedFeatureId' . #' #' @param project_id project-space to read from. - #' @param aligned_feature_id feature (aligned over runs) the Mass Spec data belong sto. + #' @param aligned_feature_id feature (aligned over runs) the Mass Spec data belongs to. + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (MsData) with additional information such as HTTP status code, headers - GetMsDataWithHttpInfo = function(project_id, aligned_feature_id, data_file = NULL, ...) { + GetMsDataWithHttpInfo = function(project_id, aligned_feature_id, ms_data_search_prepared = FALSE, data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -3450,6 +4244,9 @@ FeaturesApi <- R6::R6Class( + + query_params[["msDataSearchPrepared"]] <- `ms_data_search_prepared` + local_var_url_path <- "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/ms-data" if (!missing(`project_id`)) { local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) @@ -3506,17 +4303,17 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + #' [EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId) #' #' @param project_id project-space to read from. - #' @param aligned_feature_id feature which intensities should be read out + #' @param aligned_feature_id feature which quantity should be read out #' @param type (optional) quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex. (default value: "APEX_HEIGHT") #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' - #' @return QuantificationTableExperimental - GetQuantificationExperimental = function(project_id, aligned_feature_id, type = "APEX_HEIGHT", data_file = NULL, ...) { - local_var_response <- self$GetQuantificationExperimentalWithHttpInfo(project_id, aligned_feature_id, type, data_file = data_file, ...) + #' @return QuantTableExperimental + GetQuantTableRowExperimental = function(project_id, aligned_feature_id, type = "APEX_HEIGHT", data_file = NULL, ...) { + local_var_response <- self$GetQuantTableRowExperimentalWithHttpInfo(project_id, aligned_feature_id, type, 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) { @@ -3529,16 +4326,16 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + #' [EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId) #' #' @param project_id project-space to read from. - #' @param aligned_feature_id feature which intensities should be read out + #' @param aligned_feature_id feature which quantity should be read out #' @param type (optional) quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex. (default value: "APEX_HEIGHT") #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' - #' @return API response (QuantificationTableExperimental) with additional information such as HTTP status code, headers - GetQuantificationExperimentalWithHttpInfo = function(project_id, aligned_feature_id, type = "APEX_HEIGHT", data_file = NULL, ...) { + #' @return API response (QuantTableExperimental) with additional information such as HTTP status code, headers + GetQuantTableRowExperimentalWithHttpInfo = function(project_id, aligned_feature_id, type = "APEX_HEIGHT", data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -3559,12 +4356,12 @@ FeaturesApi <- R6::R6Class( - if (!is.null(`type`) && !(`type` %in% c("APEX_HEIGHT"))) { - stop("Invalid value for type when calling FeaturesApi$GetQuantificationExperimental. Must be [APEX_HEIGHT].") + if (!is.null(`type`) && !(`type` %in% c("APEX_INTENSITY", "AREA_UNDER_CURVE"))) { + stop("Invalid value for type when calling FeaturesApi$GetQuantTableRowExperimental. Must be [APEX_INTENSITY, AREA_UNDER_CURVE].") } query_params[["type"]] <- `type` - local_var_url_path <- "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quantification" + local_var_url_path <- "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quant-table-row" if (!missing(`project_id`)) { local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) } @@ -3600,7 +4397,7 @@ FeaturesApi <- R6::R6Class( } deserialized_resp_obj <- tryCatch( - self$api_client$deserialize(local_var_resp$response_as_text(), "QuantificationTableExperimental", loadNamespace("Rsirius")), + self$api_client$deserialize(local_var_resp$response_as_text(), "QuantTableExperimental", loadNamespace("Rsirius")), error = function(e) { stop("Failed to deserialize response") } @@ -3620,17 +4417,17 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' List of spectral library matches for the given 'alignedFeatureId'. + #' Spectral library match for the given 'alignedFeatureId'. #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the structure candidates belong to. - #' @param match_id - #' @param opt_fields (optional) No description (default value: ["none"]) + #' @param match_id id of the library match to be returned. + #' @param opt_fields (optional) No description (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return SpectralLibraryMatch - GetSpectralLibraryMatch = function(project_id, aligned_feature_id, match_id, opt_fields = list("none"), data_file = NULL, ...) { + GetSpectralLibraryMatch = function(project_id, aligned_feature_id, match_id, opt_fields = list(NULL), data_file = NULL, ...) { local_var_response <- self$GetSpectralLibraryMatchWithHttpInfo(project_id, aligned_feature_id, match_id, opt_fields, data_file = data_file, ...) if (local_var_response$status_code >= 200 && local_var_response$status_code <= 299) { local_var_response$content @@ -3644,17 +4441,17 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' List of spectral library matches for the given 'alignedFeatureId'. + #' Spectral library match for the given 'alignedFeatureId'. #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the structure candidates belong to. - #' @param match_id - #' @param opt_fields (optional) No description (default value: ["none"]) + #' @param match_id id of the library match to be returned. + #' @param opt_fields (optional) No description (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (SpectralLibraryMatch) with additional information such as HTTP status code, headers - GetSpectralLibraryMatchWithHttpInfo = function(project_id, aligned_feature_id, match_id, opt_fields = list("none"), data_file = NULL, ...) { + GetSpectralLibraryMatchWithHttpInfo = function(project_id, aligned_feature_id, match_id, opt_fields = list(NULL), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -3892,12 +4689,12 @@ FeaturesApi <- R6::R6Class( #' @param min_shared_peaks (optional) No description (default value: 1) #' @param min_similarity (optional) No description (default value: 0.2) #' @param inchi_key (optional) No description (default value: "") - #' @param opt_fields (optional) No description (default value: ["none"]) + #' @param opt_fields (optional) No description (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return PagedModelSpectralLibraryMatch - GetSpectralLibraryMatchesPaged = function(project_id, aligned_feature_id, page = 0, size = 20, sort = NULL, min_shared_peaks = 1, min_similarity = 0.2, inchi_key = "", opt_fields = list("none"), data_file = NULL, ...) { + GetSpectralLibraryMatchesPaged = function(project_id, aligned_feature_id, page = 0, size = 20, sort = NULL, min_shared_peaks = 1, min_similarity = 0.2, inchi_key = "", opt_fields = list(NULL), data_file = NULL, ...) { local_var_response <- self$GetSpectralLibraryMatchesPagedWithHttpInfo(project_id, aligned_feature_id, page, size, sort, min_shared_peaks, min_similarity, inchi_key, opt_fields, data_file = data_file, ...) if (local_var_response$status_code >= 200 && local_var_response$status_code <= 299) { local_var_response$content @@ -3921,12 +4718,12 @@ FeaturesApi <- R6::R6Class( #' @param min_shared_peaks (optional) No description (default value: 1) #' @param min_similarity (optional) No description (default value: 0.2) #' @param inchi_key (optional) No description (default value: "") - #' @param opt_fields (optional) No description (default value: ["none"]) + #' @param opt_fields (optional) No description (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (PagedModelSpectralLibraryMatch) with additional information such as HTTP status code, headers - GetSpectralLibraryMatchesPagedWithHttpInfo = function(project_id, aligned_feature_id, page = 0, size = 20, sort = NULL, min_shared_peaks = 1, min_similarity = 0.2, inchi_key = "", opt_fields = list("none"), data_file = NULL, ...) { + GetSpectralLibraryMatchesPagedWithHttpInfo = function(project_id, aligned_feature_id, page = 0, size = 20, sort = NULL, min_shared_peaks = 1, min_similarity = 0.2, inchi_key = "", opt_fields = list(NULL), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -4064,18 +4861,139 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' Summarize matched reference spectra for the given 'alignedFeatureId'. + #' Summarize matched reference spectra for the given 'alignedFeatureId'. + #' + #' @param project_id project-space to read from. + #' @param aligned_feature_id feature (aligned over runs) the structure candidates belong to. + #' @param min_shared_peaks (optional) min threshold of shared peaks. (default value: 1) + #' @param min_similarity (optional) min spectral similarity threshold. (default value: 0.2) + #' @param inchi_key (optional) 2D inchi key of the compound in the structure database. (default value: "") + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (SpectralLibraryMatchSummary) with additional information such as HTTP status code, headers + GetSpectralLibraryMatchesSummaryWithHttpInfo = function(project_id, aligned_feature_id, min_shared_peaks = 1, min_similarity = 0.2, inchi_key = "", 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`.") + } + + if (missing(`aligned_feature_id`)) { + stop("Missing required parameter `aligned_feature_id`.") + } + + + + + + + query_params[["minSharedPeaks"]] <- `min_shared_peaks` + + query_params[["minSimilarity"]] <- `min_similarity` + + query_params[["inchiKey"]] <- `inchi_key` + + local_var_url_path <- "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/summary" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`aligned_feature_id`)) { + local_var_url_path <- gsub("\\{alignedFeatureId\\}", URLencode(as.character(`aligned_feature_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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "SpectralLibraryMatchSummary", 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 + #' [EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey + #' + #' @param project_id project-space to read from. + #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. + #' @param formula_id identifier of the requested formula result + #' @param inchi_key 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return AnnotatedMsMsData + GetStructureAnnotatedMsDataExperimental = function(project_id, aligned_feature_id, formula_id, inchi_key, ms_data_search_prepared = FALSE, data_file = NULL, ...) { + local_var_response <- self$GetStructureAnnotatedMsDataExperimentalWithHttpInfo(project_id, aligned_feature_id, formula_id, inchi_key, ms_data_search_prepared, 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 + #' [EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey #' #' @param project_id project-space to read from. - #' @param aligned_feature_id feature (aligned over runs) the structure candidates belong to. - #' @param min_shared_peaks (optional) min threshold of shared peaks. (default value: 1) - #' @param min_similarity (optional) min spectral similarity threshold. (default value: 0.2) - #' @param inchi_key (optional) 2D inchi key of the compound in the structure database. (default value: "") + #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. + #' @param formula_id identifier of the requested formula result + #' @param inchi_key 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation + #' @param ms_data_search_prepared (optional) Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (default value: FALSE) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' - #' @return API response (SpectralLibraryMatchSummary) with additional information such as HTTP status code, headers - GetSpectralLibraryMatchesSummaryWithHttpInfo = function(project_id, aligned_feature_id, min_shared_peaks = 1, min_similarity = 0.2, inchi_key = "", data_file = NULL, ...) { + #' @return API response (AnnotatedMsMsData) with additional information such as HTTP status code, headers + GetStructureAnnotatedMsDataExperimentalWithHttpInfo = function(project_id, aligned_feature_id, formula_id, inchi_key, ms_data_search_prepared = FALSE, data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -4093,18 +5011,22 @@ FeaturesApi <- R6::R6Class( stop("Missing required parameter `aligned_feature_id`.") } + if (missing(`formula_id`)) { + stop("Missing required parameter `formula_id`.") + } + if (missing(`inchi_key`)) { + stop("Missing required parameter `inchi_key`.") + } - query_params[["minSharedPeaks"]] <- `min_shared_peaks` - query_params[["minSimilarity"]] <- `min_similarity` - query_params[["inchiKey"]] <- `inchi_key` + query_params[["msDataSearchPrepared"]] <- `ms_data_search_prepared` - local_var_url_path <- "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/summary" + local_var_url_path <- "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata" if (!missing(`project_id`)) { local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) } @@ -4113,6 +5035,14 @@ FeaturesApi <- R6::R6Class( local_var_url_path <- gsub("\\{alignedFeatureId\\}", URLencode(as.character(`aligned_feature_id`), reserved = TRUE), local_var_url_path) } + if (!missing(`formula_id`)) { + local_var_url_path <- gsub("\\{formulaId\\}", URLencode(as.character(`formula_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`inchi_key`)) { + local_var_url_path <- gsub("\\{inchiKey\\}", URLencode(as.character(`inchi_key`), reserved = TRUE), local_var_url_path) + } + # The Accept request HTTP header local_var_accepts <- list("application/json") @@ -4140,7 +5070,7 @@ FeaturesApi <- R6::R6Class( } deserialized_resp_obj <- tryCatch( - self$api_client$deserialize(local_var_resp$response_as_text(), "SpectralLibraryMatchSummary", loadNamespace("Rsirius")), + self$api_client$deserialize(local_var_resp$response_as_text(), "AnnotatedMsMsData", loadNamespace("Rsirius")), error = function(e) { stop("Failed to deserialize response") } @@ -4160,18 +5090,17 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. + #' [EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations #' #' @param project_id project-space to read from. - #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. - #' @param formula_id identifier of the requested formula result - #' @param inchi_key 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation + #' @param aligned_feature_id feature (aligned over runs) the structure candidates belong to. + #' @param match_id id of the library match to be returned. #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' - #' @return AnnotatedMsMsData - GetStructureAnnotatedMsDataExperimental = function(project_id, aligned_feature_id, formula_id, inchi_key, data_file = NULL, ...) { - local_var_response <- self$GetStructureAnnotatedMsDataExperimentalWithHttpInfo(project_id, aligned_feature_id, formula_id, inchi_key, data_file = data_file, ...) + #' @return AnnotatedSpectrum + GetStructureAnnotatedSpectralLibraryMatchExperimental = function(project_id, aligned_feature_id, match_id, data_file = NULL, ...) { + local_var_response <- self$GetStructureAnnotatedSpectralLibraryMatchExperimentalWithHttpInfo(project_id, aligned_feature_id, match_id, 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) { @@ -4184,17 +5113,16 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. + #' [EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations #' #' @param project_id project-space to read from. - #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. - #' @param formula_id identifier of the requested formula result - #' @param inchi_key 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation + #' @param aligned_feature_id feature (aligned over runs) the structure candidates belong to. + #' @param match_id id of the library match to be returned. #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' - #' @return API response (AnnotatedMsMsData) with additional information such as HTTP status code, headers - GetStructureAnnotatedMsDataExperimentalWithHttpInfo = function(project_id, aligned_feature_id, formula_id, inchi_key, data_file = NULL, ...) { + #' @return API response (AnnotatedSpectrum) with additional information such as HTTP status code, headers + GetStructureAnnotatedSpectralLibraryMatchExperimentalWithHttpInfo = function(project_id, aligned_feature_id, match_id, data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -4212,19 +5140,14 @@ FeaturesApi <- R6::R6Class( stop("Missing required parameter `aligned_feature_id`.") } - if (missing(`formula_id`)) { - stop("Missing required parameter `formula_id`.") - } - - if (missing(`inchi_key`)) { - stop("Missing required parameter `inchi_key`.") + if (missing(`match_id`)) { + stop("Missing required parameter `match_id`.") } - - local_var_url_path <- "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata" + local_var_url_path <- "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}/annotated" if (!missing(`project_id`)) { local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) } @@ -4233,12 +5156,8 @@ FeaturesApi <- R6::R6Class( local_var_url_path <- gsub("\\{alignedFeatureId\\}", URLencode(as.character(`aligned_feature_id`), reserved = TRUE), local_var_url_path) } - if (!missing(`formula_id`)) { - local_var_url_path <- gsub("\\{formulaId\\}", URLencode(as.character(`formula_id`), reserved = TRUE), local_var_url_path) - } - - if (!missing(`inchi_key`)) { - local_var_url_path <- gsub("\\{inchiKey\\}", URLencode(as.character(`inchi_key`), reserved = TRUE), local_var_url_path) + if (!missing(`match_id`)) { + local_var_url_path <- gsub("\\{matchId\\}", URLencode(as.character(`match_id`), reserved = TRUE), local_var_url_path) } @@ -4268,7 +5187,7 @@ FeaturesApi <- R6::R6Class( } deserialized_resp_obj <- tryCatch( - self$api_client$deserialize(local_var_resp$response_as_text(), "AnnotatedMsMsData", loadNamespace("Rsirius")), + self$api_client$deserialize(local_var_resp$response_as_text(), "AnnotatedSpectrum", loadNamespace("Rsirius")), error = function(e) { stop("Failed to deserialize response") } @@ -4288,19 +5207,20 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. + #' [EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. #' @param formula_id identifier of the requested formula result #' @param inchi_key 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation #' @param spectrum_index (optional) index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) (default value: -1) + #' @param search_prepared (optional) No description (default value: FALSE) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return AnnotatedSpectrum - GetStructureAnnotatedSpectrumExperimental = function(project_id, aligned_feature_id, formula_id, inchi_key, spectrum_index = -1, data_file = NULL, ...) { - local_var_response <- self$GetStructureAnnotatedSpectrumExperimentalWithHttpInfo(project_id, aligned_feature_id, formula_id, inchi_key, spectrum_index, data_file = data_file, ...) + GetStructureAnnotatedSpectrumExperimental = function(project_id, aligned_feature_id, formula_id, inchi_key, spectrum_index = -1, search_prepared = FALSE, data_file = NULL, ...) { + local_var_response <- self$GetStructureAnnotatedSpectrumExperimentalWithHttpInfo(project_id, aligned_feature_id, formula_id, inchi_key, spectrum_index, search_prepared, 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) { @@ -4313,18 +5233,19 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. + #' [EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. #' @param formula_id identifier of the requested formula result #' @param inchi_key 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation #' @param spectrum_index (optional) index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) (default value: -1) + #' @param search_prepared (optional) No description (default value: FALSE) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (AnnotatedSpectrum) with additional information such as HTTP status code, headers - GetStructureAnnotatedSpectrumExperimentalWithHttpInfo = function(project_id, aligned_feature_id, formula_id, inchi_key, spectrum_index = -1, data_file = NULL, ...) { + GetStructureAnnotatedSpectrumExperimentalWithHttpInfo = function(project_id, aligned_feature_id, formula_id, inchi_key, spectrum_index = -1, search_prepared = FALSE, data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -4355,8 +5276,11 @@ FeaturesApi <- R6::R6Class( + query_params[["spectrumIndex"]] <- `spectrum_index` + query_params[["searchPrepared"]] <- `search_prepared` + local_var_url_path <- "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum" if (!missing(`project_id`)) { local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) @@ -4425,12 +5349,12 @@ FeaturesApi <- R6::R6Class( #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the structure candidates belong to. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return array[StructureCandidateFormula] - GetStructureCandidates = function(project_id, aligned_feature_id, opt_fields = list("none"), data_file = NULL, ...) { + GetStructureCandidates = function(project_id, aligned_feature_id, opt_fields = list(NULL), data_file = NULL, ...) { local_var_response <- self$GetStructureCandidatesWithHttpInfo(project_id, aligned_feature_id, opt_fields, data_file = data_file, ...) if (local_var_response$status_code >= 200 && local_var_response$status_code <= 299) { local_var_response$content @@ -4448,12 +5372,12 @@ FeaturesApi <- R6::R6Class( #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the structure candidates belong to. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (array[StructureCandidateFormula]) with additional information such as HTTP status code, headers - GetStructureCandidatesWithHttpInfo = function(project_id, aligned_feature_id, opt_fields = list("none"), data_file = NULL, ...) { + GetStructureCandidatesWithHttpInfo = function(project_id, aligned_feature_id, opt_fields = list(NULL), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -4477,8 +5401,8 @@ FeaturesApi <- R6::R6Class( # explore for (query_item in `opt_fields`) { # validate enum values - if (!is.null(query_item) && !(query_item %in% c("none", "fingerprint", "dbLinks", "libraryMatches"))) { - stop("Invalid value for opt_fields when calling FeaturesApi$GetStructureCandidates. Must be [none, fingerprint, dbLinks, libraryMatches].") + if (!is.null(query_item) && !(query_item %in% c("none", "fingerprint", "dbLinks", "libraryMatches", "structureSvg"))) { + stop("Invalid value for opt_fields when calling FeaturesApi$GetStructureCandidates. Must be [none, fingerprint, dbLinks, libraryMatches, structureSvg].") } query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) } @@ -4544,12 +5468,12 @@ FeaturesApi <- R6::R6Class( #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. #' @param formula_id identifier of the requested formula result - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return array[StructureCandidateScored] - GetStructureCandidatesByFormula = function(project_id, aligned_feature_id, formula_id, opt_fields = list("none"), data_file = NULL, ...) { + GetStructureCandidatesByFormula = function(project_id, aligned_feature_id, formula_id, opt_fields = list(NULL), data_file = NULL, ...) { local_var_response <- self$GetStructureCandidatesByFormulaWithHttpInfo(project_id, aligned_feature_id, formula_id, opt_fields, data_file = data_file, ...) if (local_var_response$status_code >= 200 && local_var_response$status_code <= 299) { local_var_response$content @@ -4568,12 +5492,12 @@ FeaturesApi <- R6::R6Class( #' @param project_id project-space to read from. #' @param aligned_feature_id feature (aligned over runs) the formula result belongs to. #' @param formula_id identifier of the requested formula result - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (array[StructureCandidateScored]) with additional information such as HTTP status code, headers - GetStructureCandidatesByFormulaWithHttpInfo = function(project_id, aligned_feature_id, formula_id, opt_fields = list("none"), data_file = NULL, ...) { + GetStructureCandidatesByFormulaWithHttpInfo = function(project_id, aligned_feature_id, formula_id, opt_fields = list(NULL), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -4602,8 +5526,8 @@ FeaturesApi <- R6::R6Class( # explore for (query_item in `opt_fields`) { # validate enum values - if (!is.null(query_item) && !(query_item %in% c("none", "fingerprint", "dbLinks", "libraryMatches"))) { - stop("Invalid value for opt_fields when calling FeaturesApi$GetStructureCandidatesByFormula. Must be [none, fingerprint, dbLinks, libraryMatches].") + if (!is.null(query_item) && !(query_item %in% c("none", "fingerprint", "dbLinks", "libraryMatches", "structureSvg"))) { + stop("Invalid value for opt_fields when calling FeaturesApi$GetStructureCandidatesByFormula. Must be [none, fingerprint, dbLinks, libraryMatches, structureSvg].") } query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) } @@ -4676,12 +5600,12 @@ FeaturesApi <- R6::R6Class( #' @param page (optional) Zero-based page index (0..N) (default value: 0) #' @param size (optional) The size of the page to be returned (default value: 20) #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return PagedModelStructureCandidateScored - GetStructureCandidatesByFormulaPaged = function(project_id, aligned_feature_id, formula_id, page = 0, size = 20, sort = NULL, opt_fields = list("none"), data_file = NULL, ...) { + GetStructureCandidatesByFormulaPaged = function(project_id, aligned_feature_id, formula_id, page = 0, size = 20, sort = NULL, opt_fields = list(NULL), data_file = NULL, ...) { local_var_response <- self$GetStructureCandidatesByFormulaPagedWithHttpInfo(project_id, aligned_feature_id, formula_id, page, size, sort, opt_fields, data_file = data_file, ...) if (local_var_response$status_code >= 200 && local_var_response$status_code <= 299) { local_var_response$content @@ -4703,12 +5627,12 @@ FeaturesApi <- R6::R6Class( #' @param page (optional) Zero-based page index (0..N) (default value: 0) #' @param size (optional) The size of the page to be returned (default value: 20) #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (PagedModelStructureCandidateScored) with additional information such as HTTP status code, headers - GetStructureCandidatesByFormulaPagedWithHttpInfo = function(project_id, aligned_feature_id, formula_id, page = 0, size = 20, sort = NULL, opt_fields = list("none"), data_file = NULL, ...) { + GetStructureCandidatesByFormulaPagedWithHttpInfo = function(project_id, aligned_feature_id, formula_id, page = 0, size = 20, sort = NULL, opt_fields = list(NULL), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -4755,8 +5679,8 @@ FeaturesApi <- R6::R6Class( # explore for (query_item in `opt_fields`) { # validate enum values - if (!is.null(query_item) && !(query_item %in% c("none", "fingerprint", "dbLinks", "libraryMatches"))) { - stop("Invalid value for opt_fields when calling FeaturesApi$GetStructureCandidatesByFormulaPaged. Must be [none, fingerprint, dbLinks, libraryMatches].") + if (!is.null(query_item) && !(query_item %in% c("none", "fingerprint", "dbLinks", "libraryMatches", "structureSvg"))) { + stop("Invalid value for opt_fields when calling FeaturesApi$GetStructureCandidatesByFormulaPaged. Must be [none, fingerprint, dbLinks, libraryMatches, structureSvg].") } query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) } @@ -4828,12 +5752,12 @@ FeaturesApi <- R6::R6Class( #' @param page (optional) Zero-based page index (0..N) (default value: 0) #' @param size (optional) The size of the page to be returned (default value: 20) #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return PagedModelStructureCandidateFormula - GetStructureCandidatesPaged = function(project_id, aligned_feature_id, page = 0, size = 20, sort = NULL, opt_fields = list("none"), data_file = NULL, ...) { + GetStructureCandidatesPaged = function(project_id, aligned_feature_id, page = 0, size = 20, sort = NULL, opt_fields = list(NULL), data_file = NULL, ...) { local_var_response <- self$GetStructureCandidatesPagedWithHttpInfo(project_id, aligned_feature_id, page, size, sort, opt_fields, data_file = data_file, ...) if (local_var_response$status_code >= 200 && local_var_response$status_code <= 299) { local_var_response$content @@ -4854,12 +5778,12 @@ FeaturesApi <- R6::R6Class( #' @param page (optional) Zero-based page index (0..N) (default value: 0) #' @param size (optional) The size of the page to be returned (default value: 20) #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (PagedModelStructureCandidateFormula) with additional information such as HTTP status code, headers - GetStructureCandidatesPagedWithHttpInfo = function(project_id, aligned_feature_id, page = 0, size = 20, sort = NULL, opt_fields = list("none"), data_file = NULL, ...) { + GetStructureCandidatesPagedWithHttpInfo = function(project_id, aligned_feature_id, page = 0, size = 20, sort = NULL, opt_fields = list(NULL), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -4901,8 +5825,8 @@ FeaturesApi <- R6::R6Class( # explore for (query_item in `opt_fields`) { # validate enum values - if (!is.null(query_item) && !(query_item %in% c("none", "fingerprint", "dbLinks", "libraryMatches"))) { - stop("Invalid value for opt_fields when calling FeaturesApi$GetStructureCandidatesPaged. Must be [none, fingerprint, dbLinks, libraryMatches].") + if (!is.null(query_item) && !(query_item %in% c("none", "fingerprint", "dbLinks", "libraryMatches", "structureSvg"))) { + stop("Invalid value for opt_fields when calling FeaturesApi$GetStructureCandidatesPaged. Must be [none, fingerprint, dbLinks, libraryMatches, structureSvg].") } query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) } @@ -4963,7 +5887,113 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + #' [EXPERIMENTAL] Get all tags associated with this Object + #' + #' @param project_id project-space to get from. + #' @param object_id object to get tags for. + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return array[Tag] + GetTagsForAlignedFeaturesExperimental = function(project_id, object_id, data_file = NULL, ...) { + local_var_response <- self$GetTagsForAlignedFeaturesExperimentalWithHttpInfo(project_id, object_id, 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 + #' [EXPERIMENTAL] Get all tags associated with this Object + #' + #' @param project_id project-space to get from. + #' @param object_id object to get tags for. + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (array[Tag]) with additional information such as HTTP status code, headers + GetTagsForAlignedFeaturesExperimentalWithHttpInfo = function(project_id, object_id, 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`.") + } + + if (missing(`object_id`)) { + stop("Missing required parameter `object_id`.") + } + + + + local_var_url_path <- "/api/projects/{projectId}/aligned-features/tags/{objectId}" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`object_id`)) { + local_var_url_path <- gsub("\\{objectId\\}", URLencode(as.character(`object_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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "array[Tag]", 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 + #' [EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId) #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature which intensities should be read out @@ -4986,7 +6016,7 @@ FeaturesApi <- R6::R6Class( }, #' @description - #' EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. + #' [EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId) #' #' @param project_id project-space to read from. #' @param aligned_feature_id feature which intensities should be read out @@ -5071,6 +6101,110 @@ FeaturesApi <- R6::R6Class( } local_var_resp } + }, + + #' @description + #' [EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space + #' + #' @param project_id project-space to delete from. + #' @param aligned_feature_id feature (aligned over runs) to delete tag from. + #' @param tag_name name of the tag to delete. + #' @param ... Other optional arguments + #' + #' @return void + RemoveTagFromAlignedFeatureExperimental = function(project_id, aligned_feature_id, tag_name, ...) { + local_var_response <- self$RemoveTagFromAlignedFeatureExperimentalWithHttpInfo(project_id, aligned_feature_id, tag_name, ...) + 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 + #' [EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space + #' + #' @param project_id project-space to delete from. + #' @param aligned_feature_id feature (aligned over runs) to delete tag from. + #' @param tag_name name of the tag to delete. + #' @param ... Other optional arguments + #' + #' @return API response (void) with additional information such as HTTP status code, headers + RemoveTagFromAlignedFeatureExperimentalWithHttpInfo = function(project_id, aligned_feature_id, tag_name, ...) { + 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`.") + } + + if (missing(`aligned_feature_id`)) { + stop("Missing required parameter `aligned_feature_id`.") + } + + if (missing(`tag_name`)) { + stop("Missing required parameter `tag_name`.") + } + + + + + local_var_url_path <- "/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}/{tagName}" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`aligned_feature_id`)) { + local_var_url_path <- gsub("\\{alignedFeatureId\\}", URLencode(as.character(`aligned_feature_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`tag_name`)) { + local_var_url_path <- gsub("\\{tagName\\}", URLencode(as.character(`tag_name`), 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 = "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) { + 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/fold_change.R b/client-api_r/generated/R/fold_change.R new file mode 100644 index 00000000..e2014e42 --- /dev/null +++ b/client-api_r/generated/R/fold_change.R @@ -0,0 +1,342 @@ +#' Create a new FoldChange +#' +#' @description +#' FoldChange Class +#' +#' @docType class +#' @title FoldChange +#' @description FoldChange Class +#' @format An \code{R6Class} generator object +#' @field leftGroup character [optional] +#' @field rightGroup character [optional] +#' @field aggregation character [optional] +#' @field quantification character [optional] +#' @field quantType character +#' @field objectId character +#' @field foldChange numeric +#' @importFrom R6 R6Class +#' @importFrom jsonlite fromJSON toJSON +#' @export +FoldChange <- R6::R6Class( + "FoldChange", + public = list( + `leftGroup` = NULL, + `rightGroup` = NULL, + `aggregation` = NULL, + `quantification` = NULL, + `quantType` = NULL, + `objectId` = NULL, + `foldChange` = NULL, + + #' @description + #' Initialize a new FoldChange class. + #' + #' @param quantType quantType + #' @param objectId objectId + #' @param foldChange foldChange + #' @param leftGroup leftGroup + #' @param rightGroup rightGroup + #' @param aggregation aggregation + #' @param quantification quantification + #' @param ... Other optional arguments. + initialize = function(`quantType`, `objectId`, `foldChange`, `leftGroup` = NULL, `rightGroup` = NULL, `aggregation` = NULL, `quantification` = NULL, ...) { + if (!missing(`quantType`)) { + if (!(`quantType` %in% c("FEATURES", "COMPOUNDS"))) { + stop(paste("Error! \"", `quantType`, "\" cannot be assigned to `quantType`. Must be \"FEATURES\", \"COMPOUNDS\".", sep = "")) + } + if (!(is.character(`quantType`) && length(`quantType`) == 1)) { + stop(paste("Error! Invalid data for `quantType`. Must be a string:", `quantType`)) + } + self$`quantType` <- `quantType` + } + if (!missing(`objectId`)) { + if (!(is.character(`objectId`) && length(`objectId`) == 1)) { + stop(paste("Error! Invalid data for `objectId`. Must be a string:", `objectId`)) + } + self$`objectId` <- `objectId` + } + if (!missing(`foldChange`)) { + if (!(is.numeric(`foldChange`) && length(`foldChange`) == 1)) { + stop(paste("Error! Invalid data for `foldChange`. Must be a number:", `foldChange`)) + } + self$`foldChange` <- `foldChange` + } + if (!is.null(`leftGroup`)) { + if (!(is.character(`leftGroup`) && length(`leftGroup`) == 1)) { + stop(paste("Error! Invalid data for `leftGroup`. Must be a string:", `leftGroup`)) + } + self$`leftGroup` <- `leftGroup` + } + if (!is.null(`rightGroup`)) { + if (!(is.character(`rightGroup`) && length(`rightGroup`) == 1)) { + stop(paste("Error! Invalid data for `rightGroup`. Must be a string:", `rightGroup`)) + } + self$`rightGroup` <- `rightGroup` + } + if (!is.null(`aggregation`)) { + if (!(`aggregation` %in% c("AVG", "MIN", "MAX"))) { + stop(paste("Error! \"", `aggregation`, "\" cannot be assigned to `aggregation`. Must be \"AVG\", \"MIN\", \"MAX\".", sep = "")) + } + if (!(is.character(`aggregation`) && length(`aggregation`) == 1)) { + stop(paste("Error! Invalid data for `aggregation`. Must be a string:", `aggregation`)) + } + self$`aggregation` <- `aggregation` + } + if (!is.null(`quantification`)) { + if (!(`quantification` %in% c("APEX_INTENSITY", "AREA_UNDER_CURVE"))) { + stop(paste("Error! \"", `quantification`, "\" cannot be assigned to `quantification`. Must be \"APEX_INTENSITY\", \"AREA_UNDER_CURVE\".", sep = "")) + } + if (!(is.character(`quantification`) && length(`quantification`) == 1)) { + stop(paste("Error! Invalid data for `quantification`. Must be a string:", `quantification`)) + } + self$`quantification` <- `quantification` + } + }, + + #' @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 FoldChange as a base R list. + #' @examples + #' # convert array of FoldChange (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 FoldChange to a base R type + #' + #' @return A base R type, e.g. a list or numeric/character array. + toSimpleType = function() { + FoldChangeObject <- list() + if (!is.null(self$`leftGroup`)) { + FoldChangeObject[["leftGroup"]] <- + self$`leftGroup` + } + if (!is.null(self$`rightGroup`)) { + FoldChangeObject[["rightGroup"]] <- + self$`rightGroup` + } + if (!is.null(self$`aggregation`)) { + FoldChangeObject[["aggregation"]] <- + self$`aggregation` + } + if (!is.null(self$`quantification`)) { + FoldChangeObject[["quantification"]] <- + self$`quantification` + } + if (!is.null(self$`quantType`)) { + FoldChangeObject[["quantType"]] <- + self$`quantType` + } + if (!is.null(self$`objectId`)) { + FoldChangeObject[["objectId"]] <- + self$`objectId` + } + if (!is.null(self$`foldChange`)) { + FoldChangeObject[["foldChange"]] <- + self$`foldChange` + } + return(FoldChangeObject) + }, + + #' @description + #' Deserialize JSON string into an instance of FoldChange + #' + #' @param input_json the JSON input + #' @return the instance of FoldChange + fromJSON = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`leftGroup`)) { + self$`leftGroup` <- this_object$`leftGroup` + } + if (!is.null(this_object$`rightGroup`)) { + self$`rightGroup` <- this_object$`rightGroup` + } + if (!is.null(this_object$`aggregation`)) { + if (!is.null(this_object$`aggregation`) && !(this_object$`aggregation` %in% c("AVG", "MIN", "MAX"))) { + stop(paste("Error! \"", this_object$`aggregation`, "\" cannot be assigned to `aggregation`. Must be \"AVG\", \"MIN\", \"MAX\".", sep = "")) + } + self$`aggregation` <- this_object$`aggregation` + } + if (!is.null(this_object$`quantification`)) { + if (!is.null(this_object$`quantification`) && !(this_object$`quantification` %in% c("APEX_INTENSITY", "AREA_UNDER_CURVE"))) { + stop(paste("Error! \"", this_object$`quantification`, "\" cannot be assigned to `quantification`. Must be \"APEX_INTENSITY\", \"AREA_UNDER_CURVE\".", sep = "")) + } + self$`quantification` <- this_object$`quantification` + } + if (!is.null(this_object$`quantType`)) { + if (!is.null(this_object$`quantType`) && !(this_object$`quantType` %in% c("FEATURES", "COMPOUNDS"))) { + stop(paste("Error! \"", this_object$`quantType`, "\" cannot be assigned to `quantType`. Must be \"FEATURES\", \"COMPOUNDS\".", sep = "")) + } + self$`quantType` <- this_object$`quantType` + } + if (!is.null(this_object$`objectId`)) { + self$`objectId` <- this_object$`objectId` + } + if (!is.null(this_object$`foldChange`)) { + self$`foldChange` <- this_object$`foldChange` + } + self + }, + + #' @description + #' To JSON String + #' + #' @param ... Parameters passed to `jsonlite::toJSON` + #' @return FoldChange 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 FoldChange + #' + #' @param input_json the JSON input + #' @return the instance of FoldChange + fromJSONString = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + self$`leftGroup` <- this_object$`leftGroup` + self$`rightGroup` <- this_object$`rightGroup` + if (!is.null(this_object$`aggregation`) && !(this_object$`aggregation` %in% c("AVG", "MIN", "MAX"))) { + stop(paste("Error! \"", this_object$`aggregation`, "\" cannot be assigned to `aggregation`. Must be \"AVG\", \"MIN\", \"MAX\".", sep = "")) + } + self$`aggregation` <- this_object$`aggregation` + if (!is.null(this_object$`quantification`) && !(this_object$`quantification` %in% c("APEX_INTENSITY", "AREA_UNDER_CURVE"))) { + stop(paste("Error! \"", this_object$`quantification`, "\" cannot be assigned to `quantification`. Must be \"APEX_INTENSITY\", \"AREA_UNDER_CURVE\".", sep = "")) + } + self$`quantification` <- this_object$`quantification` + if (!is.null(this_object$`quantType`) && !(this_object$`quantType` %in% c("FEATURES", "COMPOUNDS"))) { + stop(paste("Error! \"", this_object$`quantType`, "\" cannot be assigned to `quantType`. Must be \"FEATURES\", \"COMPOUNDS\".", sep = "")) + } + self$`quantType` <- this_object$`quantType` + self$`objectId` <- this_object$`objectId` + self$`foldChange` <- this_object$`foldChange` + self + }, + + #' @description + #' Validate JSON input with respect to FoldChange and throw an exception if invalid + #' + #' @param input the JSON input + validateJSON = function(input) { + input_json <- jsonlite::fromJSON(input) + # check the required field `quantType` + if (!is.null(input_json$`quantType`)) { + if (!(is.character(input_json$`quantType`) && length(input_json$`quantType`) == 1)) { + stop(paste("Error! Invalid data for `quantType`. Must be a string:", input_json$`quantType`)) + } + } else { + stop(paste("The JSON input `", input, "` is invalid for FoldChange: the required field `quantType` is missing.")) + } + # check the required field `objectId` + if (!is.null(input_json$`objectId`)) { + if (!(is.character(input_json$`objectId`) && length(input_json$`objectId`) == 1)) { + stop(paste("Error! Invalid data for `objectId`. Must be a string:", input_json$`objectId`)) + } + } else { + stop(paste("The JSON input `", input, "` is invalid for FoldChange: the required field `objectId` is missing.")) + } + # check the required field `foldChange` + if (!is.null(input_json$`foldChange`)) { + if (!(is.numeric(input_json$`foldChange`) && length(input_json$`foldChange`) == 1)) { + stop(paste("Error! Invalid data for `foldChange`. Must be a number:", input_json$`foldChange`)) + } + } else { + stop(paste("The JSON input `", input, "` is invalid for FoldChange: the required field `foldChange` is missing.")) + } + }, + + #' @description + #' To string (JSON format) + #' + #' @return String representation of FoldChange + 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() { + # check if the required `quantType` is null + if (is.null(self$`quantType`)) { + return(FALSE) + } + + # check if the required `objectId` is null + if (is.null(self$`objectId`)) { + return(FALSE) + } + + # check if the required `foldChange` is null + if (is.null(self$`foldChange`)) { + return(FALSE) + } + + TRUE + }, + + #' @description + #' Return a list of invalid fields (if any). + #' + #' @return A list of invalid fields (if any). + getInvalidFields = function() { + invalid_fields <- list() + # check if the required `quantType` is null + if (is.null(self$`quantType`)) { + invalid_fields["quantType"] <- "Non-nullable required field `quantType` cannot be null." + } + + # check if the required `objectId` is null + if (is.null(self$`objectId`)) { + invalid_fields["objectId"] <- "Non-nullable required field `objectId` cannot be null." + } + + # check if the required `foldChange` is null + if (is.null(self$`foldChange`)) { + invalid_fields["foldChange"] <- "Non-nullable required field `foldChange` cannot be null." + } + + 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 +# FoldChange$unlock() +# +## Below is an example to define the print function +# FoldChange$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 +# FoldChange$lock() + diff --git a/client-api_r/generated/R/formula_candidate.R b/client-api_r/generated/R/formula_candidate.R index fd2168a1..f555dbfb 100644 --- a/client-api_r/generated/R/formula_candidate.R +++ b/client-api_r/generated/R/formula_candidate.R @@ -20,13 +20,13 @@ #' @field numOfExplainablePeaks integer [optional] #' @field totalExplainedIntensity numeric [optional] #' @field medianMassDeviation \link{Deviation} [optional] -#' @field fragmentationTree \link{FragmentationTree} [optional] -#' @field annotatedSpectrum \link{AnnotatedSpectrum} [optional] -#' @field isotopePatternAnnotation \link{IsotopePatternAnnotation} [optional] -#' @field lipidAnnotation \link{LipidAnnotation} [optional] +#' @field fragmentationTree The fragmentation tree that belongs to this molecular formula candidate (produces the treeScore). \link{FragmentationTree} [optional] +#' @field annotatedSpectrum Fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses \link{AnnotatedSpectrum} [optional] +#' @field isotopePatternAnnotation The measured and simulated isotope pattern that have been compared against each other to produce the isotopeScore. \link{IsotopePatternAnnotation} [optional] +#' @field lipidAnnotation ElGordo lipid annotation of this candidate. NULL if annotation was not requested. lipidAnnotation.lipidSpecies == NULL if candidate has not been classified as a lipid \link{LipidAnnotation} [optional] #' @field predictedFingerprint Probabilistic molecular fingerprint predicted by CSI:FingerID list(numeric) [optional] -#' @field compoundClasses \link{CompoundClasses} [optional] -#' @field canopusPrediction \link{CanopusPrediction} [optional] +#' @field compoundClasses Most likely compound classes for different levels of each ontology for this FormulaCandidate (predictedFingerprint) \link{CompoundClasses} [optional] +#' @field canopusPrediction All classes predicted by canopus for this FormulaCandidate (predictedFingerprint) \link{CanopusPrediction} [optional] #' @importFrom R6 R6Class #' @importFrom jsonlite fromJSON toJSON #' @export @@ -70,13 +70,13 @@ FormulaCandidate <- R6::R6Class( #' @param numOfExplainablePeaks numOfExplainablePeaks #' @param totalExplainedIntensity totalExplainedIntensity #' @param medianMassDeviation medianMassDeviation - #' @param fragmentationTree fragmentationTree - #' @param annotatedSpectrum annotatedSpectrum - #' @param isotopePatternAnnotation isotopePatternAnnotation - #' @param lipidAnnotation lipidAnnotation + #' @param fragmentationTree The fragmentation tree that belongs to this molecular formula candidate (produces the treeScore). + #' @param annotatedSpectrum Fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses + #' @param isotopePatternAnnotation The measured and simulated isotope pattern that have been compared against each other to produce the isotopeScore. + #' @param lipidAnnotation ElGordo lipid annotation of this candidate. NULL if annotation was not requested. lipidAnnotation.lipidSpecies == NULL if candidate has not been classified as a lipid #' @param predictedFingerprint Probabilistic molecular fingerprint predicted by CSI:FingerID - #' @param compoundClasses compoundClasses - #' @param canopusPrediction canopusPrediction + #' @param compoundClasses Most likely compound classes for different levels of each ontology for this FormulaCandidate (predictedFingerprint) + #' @param canopusPrediction All classes predicted by canopus for this FormulaCandidate (predictedFingerprint) #' @param ... Other optional arguments. initialize = function(`formulaId` = NULL, `molecularFormula` = NULL, `adduct` = NULL, `rank` = NULL, `siriusScoreNormalized` = NULL, `siriusScore` = NULL, `isotopeScore` = NULL, `treeScore` = NULL, `zodiacScore` = NULL, `numOfExplainedPeaks` = NULL, `numOfExplainablePeaks` = NULL, `totalExplainedIntensity` = NULL, `medianMassDeviation` = NULL, `fragmentationTree` = NULL, `annotatedSpectrum` = NULL, `isotopePatternAnnotation` = NULL, `lipidAnnotation` = NULL, `predictedFingerprint` = NULL, `compoundClasses` = NULL, `canopusPrediction` = NULL, ...) { if (!is.null(`formulaId`)) { diff --git a/client-api_r/generated/R/gui_api.R b/client-api_r/generated/R/gui_api.R deleted file mode 100644 index e083f838..00000000 --- a/client-api_r/generated/R/gui_api.R +++ /dev/null @@ -1,342 +0,0 @@ -#' 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) - } - - 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) - } - - 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/job.R b/client-api_r/generated/R/job.R index 0417d4d6..abf3d2a9 100644 --- a/client-api_r/generated/R/job.R +++ b/client-api_r/generated/R/job.R @@ -9,7 +9,7 @@ #' @format An \code{R6Class} generator object #' @field id Unique identifier to access the job via the API character [optional] #' @field command Command string of the executed Task character [optional] -#' @field progress \link{JobProgress} [optional] +#' @field progress Optional progress information of this job \link{JobProgress} [optional] #' @field affectedCompoundIds List of compoundIds that are affected by this job. This lis will also contain compoundIds where not all features of the compound are affected by the job. If this job is creating compounds (e.g. data import jobs) this value will be NULL until the jobs has finished list(character) [optional] #' @field affectedAlignedFeatureIds List of alignedFeatureIds that are affected by this job. If this job is creating features (e.g. data import jobs) this value will be NULL until the jobs has finished list(character) [optional] #' @field jobEffect Effect this job has. The affected ids are added, removed or modified. Null if job does not affect features/compounds Not available/null if affected Ids are not requested character [optional] @@ -31,7 +31,7 @@ Job <- R6::R6Class( #' #' @param id Unique identifier to access the job via the API #' @param command Command string of the executed Task - #' @param progress progress + #' @param progress Optional progress information of this job #' @param affectedCompoundIds List of compoundIds that are affected by this job. This lis will also contain compoundIds where not all features of the compound are affected by the job. If this job is creating compounds (e.g. data import jobs) this value will be NULL until the jobs has finished #' @param affectedAlignedFeatureIds List of alignedFeatureIds that are affected by this job. If this job is creating features (e.g. data import jobs) this value will be NULL until the jobs has finished #' @param jobEffect Effect this job has. The affected ids are added, removed or modified. Null if job does not affect features/compounds Not available/null if affected Ids are not requested diff --git a/client-api_r/generated/R/job_submission.R b/client-api_r/generated/R/job_submission.R index 15054183..e78b74b4 100644 --- a/client-api_r/generated/R/job_submission.R +++ b/client-api_r/generated/R/job_submission.R @@ -13,13 +13,13 @@ #' @field enforcedAdducts Describes how to deal with Adducts: Enforced adducts that are always considered. 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]+ 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]- list(character) [optional] #' @field detectableAdducts 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). 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]+ 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]- list(character) [optional] #' @field recompute Indicate if already existing result for a tool to be executed should be overwritten or not. character [optional] -#' @field spectraSearchParams \link{SpectralLibrarySearch} [optional] -#' @field formulaIdParams \link{Sirius} [optional] -#' @field zodiacParams \link{Zodiac} [optional] -#' @field fingerprintPredictionParams \link{FingerprintPrediction} [optional] -#' @field canopusParams \link{Canopus} [optional] -#' @field structureDbSearchParams \link{StructureDbSearch} [optional] -#' @field msNovelistParams \link{MsNovelist} [optional] +#' @field spectraSearchParams Parameter Object for spectral library search tool (CLI-Tool: spectra-search). Library search results can be used to enhance formula search results If NULL the tool will not be executed. \link{SpectralLibrarySearch} [optional] +#' @field formulaIdParams Parameter Object for molecular formula identification tool (CLI-Tool: formula, sirius). If NULL the tool will not be executed. \link{Sirius} [optional] +#' @field zodiacParams Parameter Object for network based molecular formula re-ranking (CLI-Tool: zodiac). If NULL the tool will not be executed. \link{Zodiac} [optional] +#' @field fingerprintPredictionParams Parameter Object for Fingerprint prediction with CSI:FingerID (CLI-Tool: fingerint). If NULL the tool will not be executed. \link{FingerprintPrediction} [optional] +#' @field canopusParams Parameter Object for CANOPUS compound class prediction tool (CLI-Tool: canopus). If NULL the tool will not be executed. \link{Canopus} [optional] +#' @field structureDbSearchParams Parameter Object for structure database search with CSI:FingerID (CLI-Tool: structure). If NULL the tool will not be executed. \link{StructureDbSearch} [optional] +#' @field msNovelistParams Parameter Object for MsNovelist DeNovo structure generation (CLI-Tool: msnovelist) If NULL the tool will not be executed. \link{MsNovelist} [optional] #' @field configMap As an alternative to the object based parameters, this map allows to store key value pairs of ALL SIRIUS parameters. All possible parameters can be retrieved from SIRIUS via the respective endpoint. named list(character) [optional] #' @importFrom R6 R6Class #' @importFrom jsonlite fromJSON toJSON @@ -51,13 +51,13 @@ JobSubmission <- R6::R6Class( #' @param enforcedAdducts Describes how to deal with Adducts: Enforced adducts that are always considered. 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]+ 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]- #' @param detectableAdducts 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). 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]+ 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]- #' @param recompute Indicate if already existing result for a tool to be executed should be overwritten or not. - #' @param spectraSearchParams spectraSearchParams - #' @param formulaIdParams formulaIdParams - #' @param zodiacParams zodiacParams - #' @param fingerprintPredictionParams fingerprintPredictionParams - #' @param canopusParams canopusParams - #' @param structureDbSearchParams structureDbSearchParams - #' @param msNovelistParams msNovelistParams + #' @param spectraSearchParams Parameter Object for spectral library search tool (CLI-Tool: spectra-search). Library search results can be used to enhance formula search results If NULL the tool will not be executed. + #' @param formulaIdParams Parameter Object for molecular formula identification tool (CLI-Tool: formula, sirius). If NULL the tool will not be executed. + #' @param zodiacParams Parameter Object for network based molecular formula re-ranking (CLI-Tool: zodiac). If NULL the tool will not be executed. + #' @param fingerprintPredictionParams Parameter Object for Fingerprint prediction with CSI:FingerID (CLI-Tool: fingerint). If NULL the tool will not be executed. + #' @param canopusParams Parameter Object for CANOPUS compound class prediction tool (CLI-Tool: canopus). If NULL the tool will not be executed. + #' @param structureDbSearchParams Parameter Object for structure database search with CSI:FingerID (CLI-Tool: structure). If NULL the tool will not be executed. + #' @param msNovelistParams Parameter Object for MsNovelist DeNovo structure generation (CLI-Tool: msnovelist) If NULL the tool will not be executed. #' @param configMap As an alternative to the object based parameters, this map allows to store key value pairs of ALL SIRIUS parameters. All possible parameters can be retrieved from SIRIUS via the respective endpoint. #' @param ... Other optional arguments. initialize = function(`compoundIds` = NULL, `alignedFeatureIds` = NULL, `fallbackAdducts` = NULL, `enforcedAdducts` = NULL, `detectableAdducts` = NULL, `recompute` = NULL, `spectraSearchParams` = NULL, `formulaIdParams` = NULL, `zodiacParams` = NULL, `fingerprintPredictionParams` = NULL, `canopusParams` = NULL, `structureDbSearchParams` = NULL, `msNovelistParams` = NULL, `configMap` = NULL, ...) { diff --git a/client-api_r/generated/R/jobs_api.R b/client-api_r/generated/R/jobs_api.R index 296b0320..59f5fef2 100644 --- a/client-api_r/generated/R/jobs_api.R +++ b/client-api_r/generated/R/jobs_api.R @@ -51,12 +51,26 @@ #' api_instance$jobs_api$DeleteJobs(var_project_id, cancel_if_running = var_cancel_if_running, await_deletion = var_await_deletion) #' #' +#' #################### GetCommand #################### +#' +#' library(Rsirius) +#' var_job_submission <- JobSubmission$new(c("compoundIds_example"), c("alignedFeatureIds_example"), c("fallbackAdducts_example"), c("enforcedAdducts_example"), c("detectableAdducts_example"), "recompute_example", SpectralLibrarySearch$new("enabled_example", c("spectraSearchDBs_example"), 123, 123, 123, "enableAnalogueSearch_example", 123, 123, "INTENSITY", 123), Sirius$new("enabled_example", "QTOF", 123, 123, 123, "IGNORE", "filterByIsotopePattern_example", "enforceElGordoFormula_example", "performBottomUpSearch_example", 123, c("formulaSearchDBs_example"), "applyFormulaConstraintsToDBAndBottomUpSearch_example", "enforcedFormulaConstraints_example", "fallbackFormulaConstraints_example", c("detectableElements_example"), Timeout$new(123, 123), UseHeuristic$new(123, 123), "injectSpecLibMatchFormulas_example", 123, 123), Zodiac$new("enabled_example", 123, 123, "runInTwoSteps_example", ZodiacEdgeFilterThresholds$new(123, 123, 123), ZodiacEpochs$new(123, 123, 123), ZodiacLibraryScoring$new("enabled_example", 123), ZodiacAnalogueNodes$new("enabled_example", 123, 123)), FingerprintPrediction$new("enabled_example", "useScoreThreshold_example", "alwaysPredictHighRefMatches_example"), Canopus$new("enabled_example"), StructureDbSearch$new("enabled_example", c("structureSearchDBs_example"), "tagStructuresWithLipidClass_example", "OFF"), MsNovelist$new("enabled_example", 123), c(key = "inner_example")) # JobSubmission | +#' +#' #Get a CLI command for the given job configuration. +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetCommand(var_job_submissiondata_file = "result.txt") +#' result <- api_instance$jobs_api$GetCommand(var_job_submission) +#' dput(result) +#' +#' #' #################### GetDefaultJobConfig #################### #' #' library(Rsirius) #' var_include_config_map <- FALSE # character | if true, generic configmap with-defaults will be included (Optional) #' var_move_parameters_to_config_map <- FALSE # character | if true, object-based parameters will be converted to and added to the generic configMap parameters (Optional) -#' var_include_custom_dbs_for_structure_search <- FALSE # character | if true, default database selection of structure db search contains also all available custom DB. (Optional) +#' var_include_custom_dbs_for_structure_search <- FALSE # character | if true, default database selection of structure db search spectral library search contains also all available custom DB. If No custom dbs are selected, spectral library search is disabled by default. (Optional) #' #' #Request default job configuration #' api_instance <- rsirius_api$new() @@ -102,7 +116,7 @@ #' #' library(Rsirius) #' -#' #DEPRECATED: use /job-configs to get all configs with names. +#' #[DEPRECATED] Get all (non-default) job configuration names #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. @@ -175,7 +189,7 @@ #' #' library(Rsirius) #' var_name <- "name_example" # character | name of the job-config to add -#' var_job_submission <- JobSubmission$new(c("compoundIds_example"), c("alignedFeatureIds_example"), c("fallbackAdducts_example"), c("enforcedAdducts_example"), c("detectableAdducts_example"), "recompute_example", SpectralLibrarySearch$new("enabled_example", c("spectraSearchDBs_example"), 123, 123, "INTENSITY"), Sirius$new("enabled_example", "QTOF", 123, 123, 123, "IGNORE", "filterByIsotopePattern_example", "enforceElGordoFormula_example", "performBottomUpSearch_example", 123, c("formulaSearchDBs_example"), "applyFormulaConstraintsToDBAndBottomUpSearch_example", "enforcedFormulaConstraints_example", "fallbackFormulaConstraints_example", c("detectableElements_example"), Timeout$new(123, 123), UseHeuristic$new(123, 123), "injectSpecLibMatchFormulas_example", 123, 123), Zodiac$new("enabled_example", 123, 123, "runInTwoSteps_example", ZodiacEdgeFilterThresholds$new(123, 123, 123), ZodiacEpochs$new(123, 123, 123)), FingerprintPrediction$new("enabled_example", "useScoreThreshold_example", "alwaysPredictHighRefMatches_example"), Canopus$new("enabled_example"), StructureDbSearch$new("enabled_example", c("structureSearchDBs_example"), "tagStructuresWithLipidClass_example", "OFF"), MsNovelist$new("enabled_example", 123), c(key = "inner_example")) # JobSubmission | to add +#' var_job_submission <- JobSubmission$new(c("compoundIds_example"), c("alignedFeatureIds_example"), c("fallbackAdducts_example"), c("enforcedAdducts_example"), c("detectableAdducts_example"), "recompute_example", SpectralLibrarySearch$new("enabled_example", c("spectraSearchDBs_example"), 123, 123, 123, "enableAnalogueSearch_example", 123, 123, "INTENSITY", 123), Sirius$new("enabled_example", "QTOF", 123, 123, 123, "IGNORE", "filterByIsotopePattern_example", "enforceElGordoFormula_example", "performBottomUpSearch_example", 123, c("formulaSearchDBs_example"), "applyFormulaConstraintsToDBAndBottomUpSearch_example", "enforcedFormulaConstraints_example", "fallbackFormulaConstraints_example", c("detectableElements_example"), Timeout$new(123, 123), UseHeuristic$new(123, 123), "injectSpecLibMatchFormulas_example", 123, 123), Zodiac$new("enabled_example", 123, 123, "runInTwoSteps_example", ZodiacEdgeFilterThresholds$new(123, 123, 123), ZodiacEpochs$new(123, 123, 123), ZodiacLibraryScoring$new("enabled_example", 123), ZodiacAnalogueNodes$new("enabled_example", 123, 123)), FingerprintPrediction$new("enabled_example", "useScoreThreshold_example", "alwaysPredictHighRefMatches_example"), Canopus$new("enabled_example"), StructureDbSearch$new("enabled_example", c("structureSearchDBs_example"), "tagStructuresWithLipidClass_example", "OFF"), MsNovelist$new("enabled_example", 123), c(key = "inner_example")) # JobSubmission | to add #' var_override_existing <- FALSE # character | (Optional) #' var_move_parameters_to_config_map <- FALSE # character | if true, object-based parameters will be converted to and added to the generic configMap parameters in the return object (Optional) #' @@ -192,7 +206,7 @@ #' #' library(Rsirius) #' var_project_id <- "project_id_example" # character | project-space to run jobs on -#' var_job_submission <- JobSubmission$new(c("compoundIds_example"), c("alignedFeatureIds_example"), c("fallbackAdducts_example"), c("enforcedAdducts_example"), c("detectableAdducts_example"), "recompute_example", SpectralLibrarySearch$new("enabled_example", c("spectraSearchDBs_example"), 123, 123, "INTENSITY"), Sirius$new("enabled_example", "QTOF", 123, 123, 123, "IGNORE", "filterByIsotopePattern_example", "enforceElGordoFormula_example", "performBottomUpSearch_example", 123, c("formulaSearchDBs_example"), "applyFormulaConstraintsToDBAndBottomUpSearch_example", "enforcedFormulaConstraints_example", "fallbackFormulaConstraints_example", c("detectableElements_example"), Timeout$new(123, 123), UseHeuristic$new(123, 123), "injectSpecLibMatchFormulas_example", 123, 123), Zodiac$new("enabled_example", 123, 123, "runInTwoSteps_example", ZodiacEdgeFilterThresholds$new(123, 123, 123), ZodiacEpochs$new(123, 123, 123)), FingerprintPrediction$new("enabled_example", "useScoreThreshold_example", "alwaysPredictHighRefMatches_example"), Canopus$new("enabled_example"), StructureDbSearch$new("enabled_example", c("structureSearchDBs_example"), "tagStructuresWithLipidClass_example", "OFF"), MsNovelist$new("enabled_example", 123), c(key = "inner_example")) # JobSubmission | configuration of the job that will be submitted of the job to be returned +#' var_job_submission <- JobSubmission$new(c("compoundIds_example"), c("alignedFeatureIds_example"), c("fallbackAdducts_example"), c("enforcedAdducts_example"), c("detectableAdducts_example"), "recompute_example", SpectralLibrarySearch$new("enabled_example", c("spectraSearchDBs_example"), 123, 123, 123, "enableAnalogueSearch_example", 123, 123, "INTENSITY", 123), Sirius$new("enabled_example", "QTOF", 123, 123, 123, "IGNORE", "filterByIsotopePattern_example", "enforceElGordoFormula_example", "performBottomUpSearch_example", 123, c("formulaSearchDBs_example"), "applyFormulaConstraintsToDBAndBottomUpSearch_example", "enforcedFormulaConstraints_example", "fallbackFormulaConstraints_example", c("detectableElements_example"), Timeout$new(123, 123), UseHeuristic$new(123, 123), "injectSpecLibMatchFormulas_example", 123, 123), Zodiac$new("enabled_example", 123, 123, "runInTwoSteps_example", ZodiacEdgeFilterThresholds$new(123, 123, 123), ZodiacEpochs$new(123, 123, 123), ZodiacLibraryScoring$new("enabled_example", 123), ZodiacAnalogueNodes$new("enabled_example", 123, 123)), FingerprintPrediction$new("enabled_example", "useScoreThreshold_example", "alwaysPredictHighRefMatches_example"), Canopus$new("enabled_example"), StructureDbSearch$new("enabled_example", c("structureSearchDBs_example"), "tagStructuresWithLipidClass_example", "OFF"), MsNovelist$new("enabled_example", 123), c(key = "inner_example")) # JobSubmission | configuration of the job that will be submitted of the job to be returned #' var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) #' #' #Start computation for given compounds and with given parameters. @@ -520,12 +534,109 @@ JobsApi <- R6::R6Class( } }, + #' @description + #' Get a CLI command for the given job configuration. + #' + #' @param job_submission + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return array[character] + GetCommand = function(job_submission, data_file = NULL, ...) { + local_var_response <- self$GetCommandWithHttpInfo(job_submission, 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 a CLI command for the given job configuration. + #' + #' @param job_submission + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (array[character]) with additional information such as HTTP status code, headers + GetCommandWithHttpInfo = function(job_submission, 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(`job_submission`)) { + stop("Missing required parameter `job_submission`.") + } + + + if (!is.null(`job_submission`)) { + local_var_body <- `job_submission`$toJSONString() + } else { + body <- NULL + } + + local_var_url_path <- "/api/job-configs/get-command" + + # The Accept request HTTP header + local_var_accepts <- list("application/json") + + # The Content-Type representation header + local_var_content_types <- list("application/json") + + 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) { + # save response in a file + if (!is.null(data_file)) { + write(local_var_resp$response, data_file) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "array[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 #' Request default job configuration #' #' @param include_config_map (optional) if true, generic configmap with-defaults will be included (default value: FALSE) #' @param move_parameters_to_config_map (optional) if true, object-based parameters will be converted to and added to the generic configMap parameters (default value: FALSE) - #' @param include_custom_dbs_for_structure_search (optional) if true, default database selection of structure db search contains also all available custom DB. (default value: FALSE) + #' @param include_custom_dbs_for_structure_search (optional) if true, default database selection of structure db search spectral library search contains also all available custom DB. If No custom dbs are selected, spectral library search is disabled by default. (default value: FALSE) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' @@ -548,7 +659,7 @@ JobsApi <- R6::R6Class( #' #' @param include_config_map (optional) if true, generic configmap with-defaults will be included (default value: FALSE) #' @param move_parameters_to_config_map (optional) if true, object-based parameters will be converted to and added to the generic configMap parameters (default value: FALSE) - #' @param include_custom_dbs_for_structure_search (optional) if true, default database selection of structure db search contains also all available custom DB. (default value: FALSE) + #' @param include_custom_dbs_for_structure_search (optional) if true, default database selection of structure db search spectral library search contains also all available custom DB. If No custom dbs are selected, spectral library search is disabled by default. (default value: FALSE) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' @@ -624,12 +735,12 @@ JobsApi <- R6::R6Class( #' #' @param project_id project-space to run jobs on #' @param job_id of the job to be returned - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["progress"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [progress]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return Job - GetJob = function(project_id, job_id, opt_fields = list("progress"), data_file = NULL, ...) { + GetJob = function(project_id, job_id, opt_fields = list(progress), data_file = NULL, ...) { local_var_response <- self$GetJobWithHttpInfo(project_id, job_id, opt_fields, data_file = data_file, ...) if (local_var_response$status_code >= 200 && local_var_response$status_code <= 299) { local_var_response$content @@ -647,12 +758,12 @@ JobsApi <- R6::R6Class( #' #' @param project_id project-space to run jobs on #' @param job_id of the job to be returned - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["progress"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [progress]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (Job) with additional information such as HTTP status code, headers - GetJobWithHttpInfo = function(project_id, job_id, opt_fields = list("progress"), data_file = NULL, ...) { + GetJobWithHttpInfo = function(project_id, job_id, opt_fields = list(progress), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -838,7 +949,7 @@ JobsApi <- R6::R6Class( }, #' @description - #' DEPRECATED: use /job-configs to get all configs with names. + #' [DEPRECATED] Get all (non-default) job configuration names #' #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments @@ -858,7 +969,7 @@ JobsApi <- R6::R6Class( }, #' @description - #' DEPRECATED: use /job-configs to get all configs with names. + #' [DEPRECATED] Get all (non-default) job configuration names #' #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments @@ -1119,12 +1230,12 @@ JobsApi <- R6::R6Class( #' @param page (optional) Zero-based page index (0..N) (default value: 0) #' @param size (optional) The size of the page to be returned (default value: 20) #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return PagedModelJob - GetJobsPaged = function(project_id, page = 0, size = 20, sort = NULL, opt_fields = list("none"), data_file = NULL, ...) { + GetJobsPaged = function(project_id, page = 0, size = 20, sort = NULL, opt_fields = list(NULL), data_file = NULL, ...) { local_var_response <- self$GetJobsPagedWithHttpInfo(project_id, page, size, sort, opt_fields, data_file = data_file, ...) if (local_var_response$status_code >= 200 && local_var_response$status_code <= 299) { local_var_response$content @@ -1144,12 +1255,12 @@ JobsApi <- R6::R6Class( #' @param page (optional) Zero-based page index (0..N) (default value: 0) #' @param size (optional) The size of the page to be returned (default value: 20) #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (PagedModelJob) with additional information such as HTTP status code, headers - GetJobsPagedWithHttpInfo = function(project_id, page = 0, size = 20, sort = NULL, opt_fields = list("none"), data_file = NULL, ...) { + GetJobsPagedWithHttpInfo = function(project_id, page = 0, size = 20, sort = NULL, opt_fields = list(NULL), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -1588,12 +1699,12 @@ JobsApi <- R6::R6Class( #' @param job_config_name name if the config to be used #' @param request_body List of alignedFeatureIds to be computed #' @param recompute (optional) enable or disable recompute. If null the stored value will be used. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["command","progress"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [command, progress]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return Job - StartJobFromConfig = function(project_id, job_config_name, request_body, recompute = NULL, opt_fields = list("command","progress"), data_file = NULL, ...) { + StartJobFromConfig = function(project_id, job_config_name, request_body, recompute = NULL, opt_fields = list(command, progress), data_file = NULL, ...) { local_var_response <- self$StartJobFromConfigWithHttpInfo(project_id, job_config_name, request_body, recompute, opt_fields, data_file = data_file, ...) if (local_var_response$status_code >= 200 && local_var_response$status_code <= 299) { local_var_response$content @@ -1613,12 +1724,12 @@ JobsApi <- R6::R6Class( #' @param job_config_name name if the config to be used #' @param request_body List of alignedFeatureIds to be computed #' @param recompute (optional) enable or disable recompute. If null the stored value will be used. - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["command","progress"]) + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [command, progress]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (Job) with additional information such as HTTP status code, headers - StartJobFromConfigWithHttpInfo = function(project_id, job_config_name, request_body, recompute = NULL, opt_fields = list("command","progress"), data_file = NULL, ...) { + StartJobFromConfigWithHttpInfo = function(project_id, job_config_name, request_body, recompute = NULL, opt_fields = list(command, progress), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() diff --git a/client-api_r/generated/R/lcms_submission_parameters.R b/client-api_r/generated/R/lcms_submission_parameters.R index 8f25915c..8cfb2892 100644 --- a/client-api_r/generated/R/lcms_submission_parameters.R +++ b/client-api_r/generated/R/lcms_submission_parameters.R @@ -8,6 +8,11 @@ #' @description LcmsSubmissionParameters Class #' @format An \code{R6Class} generator object #' @field alignLCMSRuns Specifies whether LC/MS runs should be aligned character [optional] +#' @field noiseIntensity Noise level under which all peaks are considered to be likely noise. A peak has to be at least 3x noise level to be picked as feature. Peaks with MS/MS are still picked even though they might be below noise level. If not specified, the noise intensity is detected automatically from data. We recommend to NOT specify this parameter, as the automated detection is usually sufficient. numeric [optional] +#' @field traceMaxMassDeviation Maximal allowed mass deviation for peaks in ms1 to be considered as belonging to the same trace. \link{Deviation} [optional] +#' @field alignMaxMassDeviation Maximal allowed mass deviation for aligning features. If not specified, this parameter is estimated from data. \link{Deviation} [optional] +#' @field alignMaxRetentionTimeDeviation Maximal allowed retention time error in seconds for aligning features. If not specified, this parameter is estimated from data. numeric [optional] +#' @field minSNR 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 numeric [optional] #' @importFrom R6 R6Class #' @importFrom jsonlite fromJSON toJSON #' @export @@ -15,19 +20,55 @@ LcmsSubmissionParameters <- R6::R6Class( "LcmsSubmissionParameters", public = list( `alignLCMSRuns` = NULL, + `noiseIntensity` = NULL, + `traceMaxMassDeviation` = NULL, + `alignMaxMassDeviation` = NULL, + `alignMaxRetentionTimeDeviation` = NULL, + `minSNR` = NULL, #' @description #' Initialize a new LcmsSubmissionParameters class. #' #' @param alignLCMSRuns Specifies whether LC/MS runs should be aligned. Default to TRUE. + #' @param noiseIntensity Noise level under which all peaks are considered to be likely noise. A peak has to be at least 3x noise level to be picked as feature. Peaks with MS/MS are still picked even though they might be below noise level. If not specified, the noise intensity is detected automatically from data. We recommend to NOT specify this parameter, as the automated detection is usually sufficient.. Default to -1. + #' @param traceMaxMassDeviation Maximal allowed mass deviation for peaks in ms1 to be considered as belonging to the same trace. + #' @param alignMaxMassDeviation Maximal allowed mass deviation for aligning features. If not specified, this parameter is estimated from data. + #' @param alignMaxRetentionTimeDeviation Maximal allowed retention time error in seconds for aligning features. If not specified, this parameter is estimated from data.. Default to -1. + #' @param minSNR 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. Default to 3. #' @param ... Other optional arguments. - initialize = function(`alignLCMSRuns` = TRUE, ...) { + initialize = function(`alignLCMSRuns` = TRUE, `noiseIntensity` = -1, `traceMaxMassDeviation` = NULL, `alignMaxMassDeviation` = NULL, `alignMaxRetentionTimeDeviation` = -1, `minSNR` = 3, ...) { if (!is.null(`alignLCMSRuns`)) { if (!(is.logical(`alignLCMSRuns`) && length(`alignLCMSRuns`) == 1)) { stop(paste("Error! Invalid data for `alignLCMSRuns`. Must be a boolean:", `alignLCMSRuns`)) } self$`alignLCMSRuns` <- `alignLCMSRuns` } + if (!is.null(`noiseIntensity`)) { + if (!(is.numeric(`noiseIntensity`) && length(`noiseIntensity`) == 1)) { + stop(paste("Error! Invalid data for `noiseIntensity`. Must be a number:", `noiseIntensity`)) + } + self$`noiseIntensity` <- `noiseIntensity` + } + if (!is.null(`traceMaxMassDeviation`)) { + stopifnot(R6::is.R6(`traceMaxMassDeviation`)) + self$`traceMaxMassDeviation` <- `traceMaxMassDeviation` + } + if (!is.null(`alignMaxMassDeviation`)) { + stopifnot(R6::is.R6(`alignMaxMassDeviation`)) + self$`alignMaxMassDeviation` <- `alignMaxMassDeviation` + } + if (!is.null(`alignMaxRetentionTimeDeviation`)) { + if (!(is.numeric(`alignMaxRetentionTimeDeviation`) && length(`alignMaxRetentionTimeDeviation`) == 1)) { + stop(paste("Error! Invalid data for `alignMaxRetentionTimeDeviation`. Must be a number:", `alignMaxRetentionTimeDeviation`)) + } + self$`alignMaxRetentionTimeDeviation` <- `alignMaxRetentionTimeDeviation` + } + if (!is.null(`minSNR`)) { + if (!(is.numeric(`minSNR`) && length(`minSNR`) == 1)) { + stop(paste("Error! Invalid data for `minSNR`. Must be a number:", `minSNR`)) + } + self$`minSNR` <- `minSNR` + } }, #' @description @@ -65,6 +106,26 @@ LcmsSubmissionParameters <- R6::R6Class( LcmsSubmissionParametersObject[["alignLCMSRuns"]] <- self$`alignLCMSRuns` } + if (!is.null(self$`noiseIntensity`)) { + LcmsSubmissionParametersObject[["noiseIntensity"]] <- + self$`noiseIntensity` + } + if (!is.null(self$`traceMaxMassDeviation`)) { + LcmsSubmissionParametersObject[["traceMaxMassDeviation"]] <- + self$`traceMaxMassDeviation`$toSimpleType() + } + if (!is.null(self$`alignMaxMassDeviation`)) { + LcmsSubmissionParametersObject[["alignMaxMassDeviation"]] <- + self$`alignMaxMassDeviation`$toSimpleType() + } + if (!is.null(self$`alignMaxRetentionTimeDeviation`)) { + LcmsSubmissionParametersObject[["alignMaxRetentionTimeDeviation"]] <- + self$`alignMaxRetentionTimeDeviation` + } + if (!is.null(self$`minSNR`)) { + LcmsSubmissionParametersObject[["minSNR"]] <- + self$`minSNR` + } return(LcmsSubmissionParametersObject) }, @@ -78,6 +139,25 @@ LcmsSubmissionParameters <- R6::R6Class( if (!is.null(this_object$`alignLCMSRuns`)) { self$`alignLCMSRuns` <- this_object$`alignLCMSRuns` } + if (!is.null(this_object$`noiseIntensity`)) { + self$`noiseIntensity` <- this_object$`noiseIntensity` + } + if (!is.null(this_object$`traceMaxMassDeviation`)) { + `tracemaxmassdeviation_object` <- Deviation$new() + `tracemaxmassdeviation_object`$fromJSON(jsonlite::toJSON(this_object$`traceMaxMassDeviation`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`traceMaxMassDeviation` <- `tracemaxmassdeviation_object` + } + if (!is.null(this_object$`alignMaxMassDeviation`)) { + `alignmaxmassdeviation_object` <- Deviation$new() + `alignmaxmassdeviation_object`$fromJSON(jsonlite::toJSON(this_object$`alignMaxMassDeviation`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`alignMaxMassDeviation` <- `alignmaxmassdeviation_object` + } + if (!is.null(this_object$`alignMaxRetentionTimeDeviation`)) { + self$`alignMaxRetentionTimeDeviation` <- this_object$`alignMaxRetentionTimeDeviation` + } + if (!is.null(this_object$`minSNR`)) { + self$`minSNR` <- this_object$`minSNR` + } self }, @@ -100,6 +180,11 @@ LcmsSubmissionParameters <- R6::R6Class( fromJSONString = function(input_json) { this_object <- jsonlite::fromJSON(input_json) self$`alignLCMSRuns` <- this_object$`alignLCMSRuns` + self$`noiseIntensity` <- this_object$`noiseIntensity` + self$`traceMaxMassDeviation` <- Deviation$new()$fromJSON(jsonlite::toJSON(this_object$`traceMaxMassDeviation`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`alignMaxMassDeviation` <- Deviation$new()$fromJSON(jsonlite::toJSON(this_object$`alignMaxMassDeviation`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`alignMaxRetentionTimeDeviation` <- this_object$`alignMaxRetentionTimeDeviation` + self$`minSNR` <- this_object$`minSNR` self }, diff --git a/client-api_r/generated/R/license_info.R b/client-api_r/generated/R/license_info.R index 3f7c2a28..38d7ee21 100644 --- a/client-api_r/generated/R/license_info.R +++ b/client-api_r/generated/R/license_info.R @@ -9,8 +9,8 @@ #' @format An \code{R6Class} generator object #' @field userEmail Email address of the user account this license information belongs to. character [optional] #' @field userId User ID (uid) of the user account this license information belongs to. character [optional] -#' @field subscription \link{Subscription} [optional] -#' @field consumables \link{SubscriptionConsumables} [optional] +#' @field subscription The active subscription that was used the requested the information \link{Subscription} [optional] +#' @field consumables Status of the consumable resources of the {@link Subscription Subscription}. \link{SubscriptionConsumables} [optional] #' @field terms list(\link{Term}) [optional] #' @importFrom R6 R6Class #' @importFrom jsonlite fromJSON toJSON @@ -29,8 +29,8 @@ LicenseInfo <- R6::R6Class( #' #' @param userEmail Email address of the user account this license information belongs to. #' @param userId User ID (uid) of the user account this license information belongs to. - #' @param subscription subscription - #' @param consumables consumables + #' @param subscription The active subscription that was used the requested the information + #' @param consumables Status of the consumable resources of the {@link Subscription Subscription}. #' @param terms terms #' @param ... Other optional arguments. initialize = function(`userEmail` = NULL, `userId` = NULL, `subscription` = NULL, `consumables` = NULL, `terms` = NULL, ...) { diff --git a/client-api_r/generated/R/ms_data.R b/client-api_r/generated/R/ms_data.R index 4ccdc527..d546b217 100644 --- a/client-api_r/generated/R/ms_data.R +++ b/client-api_r/generated/R/ms_data.R @@ -1,12 +1,13 @@ #' Create a new MsData #' #' @description -#' The MsData wraps all spectral input data belonging to a (aligned) feature. All spectra fields are optional. However, at least one Spectrum field needs to be set to create a valid MsData Object. The different types of spectra fields can be extended to adapt to other MassSpec measurement techniques not covered yet.
Each Feature can have: - One merged MS/MS spectrum (optional) - One merged MS spectrum (optional) - many MS/MS spectra (optional) - many MS spectra (optional)
Each non-merged spectrum has an index which can be used to access the spectrum.
In the future we might add some additional information like chromatographic peak or something similar +#' The MsData wraps all spectral input data belonging to a (aligned) feature. All spectra fields are optional. However, at least one Spectrum field needs to be set to create a valid MsData Object. The different types of spectra fields can be extended to adapt to other MassSpec measurement techniques not covered yet.
Each Feature can have: - One extracted isotope pattern (optional) - One merged MS/MS spectrum (optional) - One merged MS spectrum (optional) - many MS/MS spectra (optional) - many MS spectra (optional)
Each non-merged spectrum has an index which can be used to access the spectrum.
In the future we might add some additional information like chromatographic peak or something similar #' #' @docType class #' @title MsData #' @description MsData Class #' @format An \code{R6Class} generator object +#' @field isotopePattern \link{BasicSpectrum} [optional] #' @field mergedMs1 \link{BasicSpectrum} [optional] #' @field mergedMs2 \link{BasicSpectrum} [optional] #' @field ms1Spectra list(\link{BasicSpectrum}) [optional] @@ -17,6 +18,7 @@ MsData <- R6::R6Class( "MsData", public = list( + `isotopePattern` = NULL, `mergedMs1` = NULL, `mergedMs2` = NULL, `ms1Spectra` = NULL, @@ -25,12 +27,17 @@ MsData <- R6::R6Class( #' @description #' Initialize a new MsData class. #' + #' @param isotopePattern isotopePattern #' @param mergedMs1 mergedMs1 #' @param mergedMs2 mergedMs2 #' @param ms1Spectra ms1Spectra #' @param ms2Spectra ms2Spectra #' @param ... Other optional arguments. - initialize = function(`mergedMs1` = NULL, `mergedMs2` = NULL, `ms1Spectra` = NULL, `ms2Spectra` = NULL, ...) { + initialize = function(`isotopePattern` = NULL, `mergedMs1` = NULL, `mergedMs2` = NULL, `ms1Spectra` = NULL, `ms2Spectra` = NULL, ...) { + if (!is.null(`isotopePattern`)) { + stopifnot(R6::is.R6(`isotopePattern`)) + self$`isotopePattern` <- `isotopePattern` + } if (!is.null(`mergedMs1`)) { stopifnot(R6::is.R6(`mergedMs1`)) self$`mergedMs1` <- `mergedMs1` @@ -82,6 +89,10 @@ MsData <- R6::R6Class( #' @return A base R type, e.g. a list or numeric/character array. toSimpleType = function() { MsDataObject <- list() + if (!is.null(self$`isotopePattern`)) { + MsDataObject[["isotopePattern"]] <- + self$`isotopePattern`$toSimpleType() + } if (!is.null(self$`mergedMs1`)) { MsDataObject[["mergedMs1"]] <- self$`mergedMs1`$toSimpleType() @@ -108,6 +119,11 @@ MsData <- R6::R6Class( #' @return the instance of MsData fromJSON = function(input_json) { this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`isotopePattern`)) { + `isotopepattern_object` <- BasicSpectrum$new() + `isotopepattern_object`$fromJSON(jsonlite::toJSON(this_object$`isotopePattern`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`isotopePattern` <- `isotopepattern_object` + } if (!is.null(this_object$`mergedMs1`)) { `mergedms1_object` <- BasicSpectrum$new() `mergedms1_object`$fromJSON(jsonlite::toJSON(this_object$`mergedMs1`, auto_unbox = TRUE, digits = NA, null = 'null')) @@ -145,6 +161,7 @@ MsData <- R6::R6Class( #' @return the instance of MsData fromJSONString = function(input_json) { this_object <- jsonlite::fromJSON(input_json) + self$`isotopePattern` <- BasicSpectrum$new()$fromJSON(jsonlite::toJSON(this_object$`isotopePattern`, auto_unbox = TRUE, digits = NA, null = 'null')) self$`mergedMs1` <- BasicSpectrum$new()$fromJSON(jsonlite::toJSON(this_object$`mergedMs1`, auto_unbox = TRUE, digits = NA, null = 'null')) self$`mergedMs2` <- BasicSpectrum$new()$fromJSON(jsonlite::toJSON(this_object$`mergedMs2`, auto_unbox = TRUE, digits = NA, null = 'null')) self$`ms1Spectra` <- ApiClient$new()$deserializeObj(this_object$`ms1Spectra`, "array[BasicSpectrum]", loadNamespace("Rsirius")) diff --git a/client-api_r/generated/R/paged_model_run.R b/client-api_r/generated/R/paged_model_run.R new file mode 100644 index 00000000..11b15c7d --- /dev/null +++ b/client-api_r/generated/R/paged_model_run.R @@ -0,0 +1,175 @@ +#' Create a new PagedModelRun +#' +#' @description +#' PagedModelRun Class +#' +#' @docType class +#' @title PagedModelRun +#' @description PagedModelRun Class +#' @format An \code{R6Class} generator object +#' @field content list(\link{Run}) [optional] +#' @field page \link{PageMetadata} [optional] +#' @importFrom R6 R6Class +#' @importFrom jsonlite fromJSON toJSON +#' @export +PagedModelRun <- R6::R6Class( + "PagedModelRun", + public = list( + `content` = NULL, + `page` = NULL, + + #' @description + #' Initialize a new PagedModelRun class. + #' + #' @param content content + #' @param page page + #' @param ... Other optional arguments. + initialize = function(`content` = NULL, `page` = NULL, ...) { + if (!is.null(`content`)) { + stopifnot(is.vector(`content`), length(`content`) != 0) + sapply(`content`, function(x) stopifnot(R6::is.R6(x))) + self$`content` <- `content` + } + if (!is.null(`page`)) { + stopifnot(R6::is.R6(`page`)) + self$`page` <- `page` + } + }, + + #' @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 PagedModelRun as a base R list. + #' @examples + #' # convert array of PagedModelRun (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 PagedModelRun to a base R type + #' + #' @return A base R type, e.g. a list or numeric/character array. + toSimpleType = function() { + PagedModelRunObject <- list() + if (!is.null(self$`content`)) { + PagedModelRunObject[["content"]] <- + lapply(self$`content`, function(x) x$toSimpleType()) + } + if (!is.null(self$`page`)) { + PagedModelRunObject[["page"]] <- + self$`page`$toSimpleType() + } + return(PagedModelRunObject) + }, + + #' @description + #' Deserialize JSON string into an instance of PagedModelRun + #' + #' @param input_json the JSON input + #' @return the instance of PagedModelRun + fromJSON = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`content`)) { + self$`content` <- ApiClient$new()$deserializeObj(this_object$`content`, "array[Run]", loadNamespace("Rsirius")) + } + if (!is.null(this_object$`page`)) { + `page_object` <- PageMetadata$new() + `page_object`$fromJSON(jsonlite::toJSON(this_object$`page`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`page` <- `page_object` + } + self + }, + + #' @description + #' To JSON String + #' + #' @param ... Parameters passed to `jsonlite::toJSON` + #' @return PagedModelRun 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 PagedModelRun + #' + #' @param input_json the JSON input + #' @return the instance of PagedModelRun + fromJSONString = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + self$`content` <- ApiClient$new()$deserializeObj(this_object$`content`, "array[Run]", loadNamespace("Rsirius")) + self$`page` <- PageMetadata$new()$fromJSON(jsonlite::toJSON(this_object$`page`, auto_unbox = TRUE, digits = NA, null = 'null')) + self + }, + + #' @description + #' Validate JSON input with respect to PagedModelRun 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 PagedModelRun + 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 +# PagedModelRun$unlock() +# +## Below is an example to define the print function +# PagedModelRun$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 +# PagedModelRun$lock() + diff --git a/client-api_r/generated/R/peak_annotation.R b/client-api_r/generated/R/peak_annotation.R index d7ee56cd..c692d176 100644 --- a/client-api_r/generated/R/peak_annotation.R +++ b/client-api_r/generated/R/peak_annotation.R @@ -15,7 +15,7 @@ #' @field massDeviationPpm Relative mass deviation of the exact mass to the measured peak mass in ppm numeric [optional] #' @field recalibratedMassDeviationMz Absolute mass deviation of the exact mass to the recalibrated peak mass in mDa numeric [optional] #' @field recalibratedMassDeviationPpm Relative mass deviation of the exact mass to the recalibrated peak mass in ppm numeric [optional] -#' @field parentPeak \link{ParentPeak} [optional] +#' @field parentPeak Link to the parent peak connected via the neutral loss from the fragmentation tree. \link{ParentPeak} [optional] #' @field substructureAtoms EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Array/List of indices of the atoms of the structure candidate that are part of this fragments substructure (highlighted atoms) list(integer) [optional] #' @field substructureBonds EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Array/List of indices of the bonds of the structure candidate that are part of this fragments substructure (highlighted bonds) Null if substructure annotation not available or not requested. list(integer) [optional] #' @field substructureBondsCut EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Array/List of indices of the bonds of the structure candidate that need to be cut to produce this fragments substructure (highlighted cutted bonds). Null if substructure annotation not available or not requested. list(integer) [optional] @@ -53,7 +53,7 @@ PeakAnnotation <- R6::R6Class( #' @param massDeviationPpm Relative mass deviation of the exact mass to the measured peak mass in ppm #' @param recalibratedMassDeviationMz Absolute mass deviation of the exact mass to the recalibrated peak mass in mDa #' @param recalibratedMassDeviationPpm Relative mass deviation of the exact mass to the recalibrated peak mass in ppm - #' @param parentPeak parentPeak + #' @param parentPeak Link to the parent peak connected via the neutral loss from the fragmentation tree. #' @param substructureAtoms EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Array/List of indices of the atoms of the structure candidate that are part of this fragments substructure (highlighted atoms) #' @param substructureBonds EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Array/List of indices of the bonds of the structure candidate that are part of this fragments substructure (highlighted bonds) Null if substructure annotation not available or not requested. #' @param substructureBondsCut EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Array/List of indices of the bonds of the structure candidate that need to be cut to produce this fragments substructure (highlighted cutted bonds). Null if substructure annotation not available or not requested. diff --git a/client-api_r/generated/R/peak_pair.R b/client-api_r/generated/R/peak_pair.R new file mode 100644 index 00000000..03d2ba6f --- /dev/null +++ b/client-api_r/generated/R/peak_pair.R @@ -0,0 +1,212 @@ +#' Create a new PeakPair +#' +#' @description +#' PeakPair Class +#' +#' @docType class +#' @title PeakPair +#' @description PeakPair Class +#' @format An \code{R6Class} generator object +#' @field queryPeak integer +#' @field referencePeak integer +#' @importFrom R6 R6Class +#' @importFrom jsonlite fromJSON toJSON +#' @export +PeakPair <- R6::R6Class( + "PeakPair", + public = list( + `queryPeak` = NULL, + `referencePeak` = NULL, + + #' @description + #' Initialize a new PeakPair class. + #' + #' @param queryPeak queryPeak + #' @param referencePeak referencePeak + #' @param ... Other optional arguments. + initialize = function(`queryPeak`, `referencePeak`, ...) { + if (!missing(`queryPeak`)) { + if (!(is.numeric(`queryPeak`) && length(`queryPeak`) == 1)) { + stop(paste("Error! Invalid data for `queryPeak`. Must be an integer:", `queryPeak`)) + } + self$`queryPeak` <- `queryPeak` + } + if (!missing(`referencePeak`)) { + if (!(is.numeric(`referencePeak`) && length(`referencePeak`) == 1)) { + stop(paste("Error! Invalid data for `referencePeak`. Must be an integer:", `referencePeak`)) + } + self$`referencePeak` <- `referencePeak` + } + }, + + #' @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 PeakPair as a base R list. + #' @examples + #' # convert array of PeakPair (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 PeakPair to a base R type + #' + #' @return A base R type, e.g. a list or numeric/character array. + toSimpleType = function() { + PeakPairObject <- list() + if (!is.null(self$`queryPeak`)) { + PeakPairObject[["queryPeak"]] <- + self$`queryPeak` + } + if (!is.null(self$`referencePeak`)) { + PeakPairObject[["referencePeak"]] <- + self$`referencePeak` + } + return(PeakPairObject) + }, + + #' @description + #' Deserialize JSON string into an instance of PeakPair + #' + #' @param input_json the JSON input + #' @return the instance of PeakPair + fromJSON = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`queryPeak`)) { + self$`queryPeak` <- this_object$`queryPeak` + } + if (!is.null(this_object$`referencePeak`)) { + self$`referencePeak` <- this_object$`referencePeak` + } + self + }, + + #' @description + #' To JSON String + #' + #' @param ... Parameters passed to `jsonlite::toJSON` + #' @return PeakPair 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 PeakPair + #' + #' @param input_json the JSON input + #' @return the instance of PeakPair + fromJSONString = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + self$`queryPeak` <- this_object$`queryPeak` + self$`referencePeak` <- this_object$`referencePeak` + self + }, + + #' @description + #' Validate JSON input with respect to PeakPair and throw an exception if invalid + #' + #' @param input the JSON input + validateJSON = function(input) { + input_json <- jsonlite::fromJSON(input) + # check the required field `queryPeak` + if (!is.null(input_json$`queryPeak`)) { + if (!(is.numeric(input_json$`queryPeak`) && length(input_json$`queryPeak`) == 1)) { + stop(paste("Error! Invalid data for `queryPeak`. Must be an integer:", input_json$`queryPeak`)) + } + } else { + stop(paste("The JSON input `", input, "` is invalid for PeakPair: the required field `queryPeak` is missing.")) + } + # check the required field `referencePeak` + if (!is.null(input_json$`referencePeak`)) { + if (!(is.numeric(input_json$`referencePeak`) && length(input_json$`referencePeak`) == 1)) { + stop(paste("Error! Invalid data for `referencePeak`. Must be an integer:", input_json$`referencePeak`)) + } + } else { + stop(paste("The JSON input `", input, "` is invalid for PeakPair: the required field `referencePeak` is missing.")) + } + }, + + #' @description + #' To string (JSON format) + #' + #' @return String representation of PeakPair + 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() { + # check if the required `queryPeak` is null + if (is.null(self$`queryPeak`)) { + return(FALSE) + } + + # check if the required `referencePeak` is null + if (is.null(self$`referencePeak`)) { + return(FALSE) + } + + TRUE + }, + + #' @description + #' Return a list of invalid fields (if any). + #' + #' @return A list of invalid fields (if any). + getInvalidFields = function() { + invalid_fields <- list() + # check if the required `queryPeak` is null + if (is.null(self$`queryPeak`)) { + invalid_fields["queryPeak"] <- "Non-nullable required field `queryPeak` cannot be null." + } + + # check if the required `referencePeak` is null + if (is.null(self$`referencePeak`)) { + invalid_fields["referencePeak"] <- "Non-nullable required field `referencePeak` cannot be null." + } + + 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 +# PeakPair$unlock() +# +## Below is an example to define the print function +# PeakPair$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 +# PeakPair$lock() + diff --git a/client-api_r/generated/R/project_info.R b/client-api_r/generated/R/project_info.R index f415773d..1a09c237 100644 --- a/client-api_r/generated/R/project_info.R +++ b/client-api_r/generated/R/project_info.R @@ -62,8 +62,8 @@ ProjectInfo <- R6::R6Class( self$`description` <- `description` } if (!is.null(`type`)) { - if (!(`type` %in% c("DIRECT_IMPORT", "PEAKLISTS", "ALIGNED_RUNS", "UNALIGNED_RUNS"))) { - stop(paste("Error! \"", `type`, "\" cannot be assigned to `type`. Must be \"DIRECT_IMPORT\", \"PEAKLISTS\", \"ALIGNED_RUNS\", \"UNALIGNED_RUNS\".", sep = "")) + if (!(`type` %in% c("UNIMPORTED", "DIRECT_IMPORT", "PEAKLISTS", "ALIGNED_RUNS", "UNALIGNED_RUNS"))) { + stop(paste("Error! \"", `type`, "\" cannot be assigned to `type`. Must be \"UNIMPORTED\", \"DIRECT_IMPORT\", \"PEAKLISTS\", \"ALIGNED_RUNS\", \"UNALIGNED_RUNS\".", sep = "")) } if (!(is.character(`type`) && length(`type`) == 1)) { stop(paste("Error! Invalid data for `type`. Must be a string:", `type`)) @@ -179,8 +179,8 @@ ProjectInfo <- R6::R6Class( self$`description` <- this_object$`description` } if (!is.null(this_object$`type`)) { - if (!is.null(this_object$`type`) && !(this_object$`type` %in% c("DIRECT_IMPORT", "PEAKLISTS", "ALIGNED_RUNS", "UNALIGNED_RUNS"))) { - stop(paste("Error! \"", this_object$`type`, "\" cannot be assigned to `type`. Must be \"DIRECT_IMPORT\", \"PEAKLISTS\", \"ALIGNED_RUNS\", \"UNALIGNED_RUNS\".", sep = "")) + if (!is.null(this_object$`type`) && !(this_object$`type` %in% c("UNIMPORTED", "DIRECT_IMPORT", "PEAKLISTS", "ALIGNED_RUNS", "UNALIGNED_RUNS"))) { + stop(paste("Error! \"", this_object$`type`, "\" cannot be assigned to `type`. Must be \"UNIMPORTED\", \"DIRECT_IMPORT\", \"PEAKLISTS\", \"ALIGNED_RUNS\", \"UNALIGNED_RUNS\".", sep = "")) } self$`type` <- this_object$`type` } @@ -220,8 +220,8 @@ ProjectInfo <- R6::R6Class( self$`projectId` <- this_object$`projectId` self$`location` <- this_object$`location` self$`description` <- this_object$`description` - if (!is.null(this_object$`type`) && !(this_object$`type` %in% c("DIRECT_IMPORT", "PEAKLISTS", "ALIGNED_RUNS", "UNALIGNED_RUNS"))) { - stop(paste("Error! \"", this_object$`type`, "\" cannot be assigned to `type`. Must be \"DIRECT_IMPORT\", \"PEAKLISTS\", \"ALIGNED_RUNS\", \"UNALIGNED_RUNS\".", sep = "")) + if (!is.null(this_object$`type`) && !(this_object$`type` %in% c("UNIMPORTED", "DIRECT_IMPORT", "PEAKLISTS", "ALIGNED_RUNS", "UNALIGNED_RUNS"))) { + stop(paste("Error! \"", this_object$`type`, "\" cannot be assigned to `type`. Must be \"UNIMPORTED\", \"DIRECT_IMPORT\", \"PEAKLISTS\", \"ALIGNED_RUNS\", \"UNALIGNED_RUNS\".", sep = "")) } self$`type` <- this_object$`type` self$`compatible` <- this_object$`compatible` diff --git a/client-api_r/generated/R/projects_api.R b/client-api_r/generated/R/projects_api.R index b7275ded..daa53450 100644 --- a/client-api_r/generated/R/projects_api.R +++ b/client-api_r/generated/R/projects_api.R @@ -17,11 +17,12 @@ #' #' library(Rsirius) #' var_project_id <- "project_id_example" # character | unique name/identifier of the project-space to be closed. +#' var_compact <- FALSE # character | if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version. (Optional) #' -#' #Close project-space and remove it from application +#' #Close project-space and remove it from the application #' api_instance <- rsirius_api$new() #' -#' api_instance$projects_api$CloseProject(var_project_id) +#' api_instance$projects_api$CloseProject(var_project_id, compact = var_compact) #' #' #' #################### CreateProject #################### @@ -117,15 +118,15 @@ #' #' library(Rsirius) #' var_project_id <- "project_id_example" # character | Project-space to import into. -#' var_input_files <- c(123) # array[data.frame] | (Optional) -#' var_parameters <- LcmsSubmissionParameters$new("alignLCMSRuns_example") # LcmsSubmissionParameters | (Optional) +#' var_input_files <- c(123) # array[data.frame] | Files to import into project. +#' var_parameters <- LcmsSubmissionParameters$new("alignLCMSRuns_example", 123, Deviation$new(123, 123), Deviation$new(123, 123), 123, 123) # LcmsSubmissionParameters | Parameters for feature alignment and feature finding. #' #' #Import and Align full MS-Runs from various formats into the specified project Possible formats (mzML, mzXML) #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$ImportMsRunData(var_project_id, input_files = var_input_files, parameters = var_parametersdata_file = "result.txt") -#' result <- api_instance$projects_api$ImportMsRunData(var_project_id, input_files = var_input_files, parameters = var_parameters) +#' # result <- api_instance$ImportMsRunData(var_project_id, var_input_files, var_parametersdata_file = "result.txt") +#' result <- api_instance$projects_api$ImportMsRunData(var_project_id, var_input_files, var_parameters) #' dput(result) #' #' @@ -133,16 +134,16 @@ #' #' library(Rsirius) #' var_project_id <- "project_id_example" # character | Project-space to import into. +#' var_input_files <- c(123) # array[data.frame] | Files to import into project. +#' var_parameters <- LcmsSubmissionParameters$new("alignLCMSRuns_example", 123, Deviation$new(123, 123), Deviation$new(123, 123), 123, 123) # LcmsSubmissionParameters | Parameters for feature alignment and feature finding. #' var_opt_fields <- c("none") # array[character] | Set of optional fields to be included. Use 'none' only to override defaults. (Optional) -#' var_input_files <- c(123) # array[data.frame] | (Optional) -#' var_parameters <- LcmsSubmissionParameters$new("alignLCMSRuns_example") # LcmsSubmissionParameters | (Optional) #' #' #Import and Align full MS-Runs from various formats into the specified project as background job. #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$ImportMsRunDataAsJob(var_project_id, opt_fields = var_opt_fields, input_files = var_input_files, parameters = var_parametersdata_file = "result.txt") -#' result <- api_instance$projects_api$ImportMsRunDataAsJob(var_project_id, opt_fields = var_opt_fields, input_files = var_input_files, parameters = var_parameters) +#' # result <- api_instance$ImportMsRunDataAsJob(var_project_id, var_input_files, var_parameters, opt_fields = var_opt_fieldsdata_file = "result.txt") +#' result <- api_instance$projects_api$ImportMsRunDataAsJob(var_project_id, var_input_files, var_parameters, opt_fields = var_opt_fields) #' dput(result) #' #' @@ -150,16 +151,16 @@ #' #' library(Rsirius) #' var_project_id <- "project_id_example" # character | project-space to import into. +#' var_input_files <- c(123) # array[data.frame] | files to import into project #' var_ignore_formulas <- FALSE # character | (Optional) #' var_allow_ms1_only <- TRUE # character | (Optional) -#' var_input_files <- c(123) # array[data.frame] | (Optional) #' #' #Import already preprocessed ms/ms data from various formats into the specified project Possible formats (ms, mgf, cef, msp) #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$ImportPreprocessedData(var_project_id, ignore_formulas = var_ignore_formulas, allow_ms1_only = var_allow_ms1_only, input_files = var_input_filesdata_file = "result.txt") -#' result <- api_instance$projects_api$ImportPreprocessedData(var_project_id, ignore_formulas = var_ignore_formulas, allow_ms1_only = var_allow_ms1_only, input_files = var_input_files) +#' # result <- api_instance$ImportPreprocessedData(var_project_id, var_input_files, ignore_formulas = var_ignore_formulas, allow_ms1_only = var_allow_ms1_onlydata_file = "result.txt") +#' result <- api_instance$projects_api$ImportPreprocessedData(var_project_id, var_input_files, ignore_formulas = var_ignore_formulas, allow_ms1_only = var_allow_ms1_only) #' dput(result) #' #' @@ -167,17 +168,17 @@ #' #' library(Rsirius) #' var_project_id <- "project_id_example" # character | project-space to import into. +#' var_input_files <- c(123) # array[data.frame] | #' var_ignore_formulas <- FALSE # character | (Optional) #' var_allow_ms1_only <- TRUE # character | (Optional) #' var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) -#' var_input_files <- c(123) # array[data.frame] | (Optional) #' #' #Import ms/ms data from the given format into the specified project-space as background job. #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$ImportPreprocessedDataAsJob(var_project_id, ignore_formulas = var_ignore_formulas, allow_ms1_only = var_allow_ms1_only, opt_fields = var_opt_fields, input_files = var_input_filesdata_file = "result.txt") -#' result <- api_instance$projects_api$ImportPreprocessedDataAsJob(var_project_id, ignore_formulas = var_ignore_formulas, allow_ms1_only = var_allow_ms1_only, opt_fields = var_opt_fields, input_files = var_input_files) +#' # result <- api_instance$ImportPreprocessedDataAsJob(var_project_id, var_input_files, ignore_formulas = var_ignore_formulas, allow_ms1_only = var_allow_ms1_only, opt_fields = var_opt_fieldsdata_file = "result.txt") +#' result <- api_instance$projects_api$ImportPreprocessedDataAsJob(var_project_id, var_input_files, ignore_formulas = var_ignore_formulas, allow_ms1_only = var_allow_ms1_only, opt_fields = var_opt_fields) #' dput(result) #' #' @@ -219,14 +220,15 @@ ProjectsApi <- R6::R6Class( }, #' @description - #' Close project-space and remove it from application + #' Close project-space and remove it from the application #' #' @param project_id unique name/identifier of the project-space to be closed. + #' @param compact (optional) if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version. (default value: FALSE) #' @param ... Other optional arguments #' #' @return void - CloseProject = function(project_id, ...) { - local_var_response <- self$CloseProjectWithHttpInfo(project_id, ...) + CloseProject = function(project_id, compact = FALSE, ...) { + local_var_response <- self$CloseProjectWithHttpInfo(project_id, compact, ...) 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) { @@ -239,13 +241,14 @@ ProjectsApi <- R6::R6Class( }, #' @description - #' Close project-space and remove it from application + #' Close project-space and remove it from the application #' #' @param project_id unique name/identifier of the project-space to be closed. + #' @param compact (optional) if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version. (default value: FALSE) #' @param ... Other optional arguments #' #' @return API response (void) with additional information such as HTTP status code, headers - CloseProjectWithHttpInfo = function(project_id, ...) { + CloseProjectWithHttpInfo = function(project_id, compact = FALSE, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -260,6 +263,9 @@ ProjectsApi <- R6::R6Class( } + + query_params[["compact"]] <- `compact` + local_var_url_path <- "/api/projects/{projectId}" if (!missing(`project_id`)) { local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) @@ -305,12 +311,12 @@ ProjectsApi <- R6::R6Class( #' #' @param project_id unique name/identifier that shall be used to access the newly created project-space. Must consist only of [a-zA-Z0-9_-]. #' @param path_to_project (optional) 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. - #' @param opt_fields (optional) No description (default value: ["none"]) + #' @param opt_fields (optional) No description (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return ProjectInfo - CreateProject = function(project_id, path_to_project = NULL, opt_fields = list("none"), data_file = NULL, ...) { + CreateProject = function(project_id, path_to_project = NULL, opt_fields = list(NULL), data_file = NULL, ...) { local_var_response <- self$CreateProjectWithHttpInfo(project_id, path_to_project, opt_fields, data_file = data_file, ...) if (local_var_response$status_code >= 200 && local_var_response$status_code <= 299) { local_var_response$content @@ -328,12 +334,12 @@ ProjectsApi <- R6::R6Class( #' #' @param project_id unique name/identifier that shall be used to access the newly created project-space. Must consist only of [a-zA-Z0-9_-]. #' @param path_to_project (optional) 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. - #' @param opt_fields (optional) No description (default value: ["none"]) + #' @param opt_fields (optional) No description (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (ProjectInfo) with additional information such as HTTP status code, headers - CreateProjectWithHttpInfo = function(project_id, path_to_project = NULL, opt_fields = list("none"), data_file = NULL, ...) { + CreateProjectWithHttpInfo = function(project_id, path_to_project = NULL, opt_fields = list(NULL), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -919,13 +925,13 @@ ProjectsApi <- R6::R6Class( #' Import and Align full MS-Runs from various formats into the specified project Possible formats (mzML, mzXML) #' #' @param project_id Project-space to import into. - #' @param input_files (optional) No description - #' @param parameters (optional) No description + #' @param input_files Files to import into project. + #' @param parameters Parameters for feature alignment and feature finding. #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return ImportResult - ImportMsRunData = function(project_id, input_files = NULL, parameters = NULL, data_file = NULL, ...) { + ImportMsRunData = function(project_id, input_files, parameters, data_file = NULL, ...) { local_var_response <- self$ImportMsRunDataWithHttpInfo(project_id, input_files, parameters, data_file = data_file, ...) if (local_var_response$status_code >= 200 && local_var_response$status_code <= 299) { local_var_response$content @@ -942,13 +948,13 @@ ProjectsApi <- R6::R6Class( #' Import and Align full MS-Runs from various formats into the specified project Possible formats (mzML, mzXML) #' #' @param project_id Project-space to import into. - #' @param input_files (optional) No description - #' @param parameters (optional) No description + #' @param input_files Files to import into project. + #' @param parameters Parameters for feature alignment and feature finding. #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (ImportResult) with additional information such as HTTP status code, headers - ImportMsRunDataWithHttpInfo = function(project_id, input_files = NULL, parameters = NULL, data_file = NULL, ...) { + ImportMsRunDataWithHttpInfo = function(project_id, input_files, parameters, data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -962,6 +968,14 @@ ProjectsApi <- R6::R6Class( stop("Missing required parameter `project_id`.") } + if (missing(`input_files`)) { + stop("Missing required parameter `input_files`.") + } + + if (missing(`parameters`)) { + stop("Missing required parameter `parameters`.") + } + @@ -1022,15 +1036,15 @@ ProjectsApi <- R6::R6Class( #' Import and Align full MS-Runs from various formats into the specified project as background job. #' #' @param project_id Project-space to import into. - #' @param opt_fields (optional) Set of optional fields to be included. Use 'none' only to override defaults. (default value: ["progress"]) - #' @param input_files (optional) No description - #' @param parameters (optional) No description + #' @param input_files Files to import into project. + #' @param parameters Parameters for feature alignment and feature finding. + #' @param opt_fields (optional) Set of optional fields to be included. Use 'none' only to override defaults. (default value: [progress]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return Job - ImportMsRunDataAsJob = function(project_id, opt_fields = list("progress"), input_files = NULL, parameters = NULL, data_file = NULL, ...) { - local_var_response <- self$ImportMsRunDataAsJobWithHttpInfo(project_id, opt_fields, input_files, parameters, data_file = data_file, ...) + ImportMsRunDataAsJob = function(project_id, input_files, parameters, opt_fields = list(progress), data_file = NULL, ...) { + local_var_response <- self$ImportMsRunDataAsJobWithHttpInfo(project_id, input_files, parameters, opt_fields, 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) { @@ -1046,14 +1060,14 @@ ProjectsApi <- R6::R6Class( #' Import and Align full MS-Runs from various formats into the specified project as background job. #' #' @param project_id Project-space to import into. - #' @param opt_fields (optional) Set of optional fields to be included. Use 'none' only to override defaults. (default value: ["progress"]) - #' @param input_files (optional) No description - #' @param parameters (optional) No description + #' @param input_files Files to import into project. + #' @param parameters Parameters for feature alignment and feature finding. + #' @param opt_fields (optional) Set of optional fields to be included. Use 'none' only to override defaults. (default value: [progress]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (Job) with additional information such as HTTP status code, headers - ImportMsRunDataAsJobWithHttpInfo = function(project_id, opt_fields = list("progress"), input_files = NULL, parameters = NULL, data_file = NULL, ...) { + ImportMsRunDataAsJobWithHttpInfo = function(project_id, input_files, parameters, opt_fields = list(progress), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -1067,6 +1081,14 @@ ProjectsApi <- R6::R6Class( stop("Missing required parameter `project_id`.") } + if (missing(`input_files`)) { + stop("Missing required parameter `input_files`.") + } + + if (missing(`parameters`)) { + stop("Missing required parameter `parameters`.") + } + @@ -1137,15 +1159,15 @@ ProjectsApi <- R6::R6Class( #' Import already preprocessed ms/ms data from various formats into the specified project Possible formats (ms, mgf, cef, msp) #' #' @param project_id project-space to import into. + #' @param input_files files to import into project #' @param ignore_formulas (optional) No description (default value: FALSE) #' @param allow_ms1_only (optional) No description (default value: TRUE) - #' @param input_files (optional) No description #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return ImportResult - ImportPreprocessedData = function(project_id, ignore_formulas = FALSE, allow_ms1_only = TRUE, input_files = NULL, data_file = NULL, ...) { - local_var_response <- self$ImportPreprocessedDataWithHttpInfo(project_id, ignore_formulas, allow_ms1_only, input_files, data_file = data_file, ...) + ImportPreprocessedData = function(project_id, input_files, ignore_formulas = FALSE, allow_ms1_only = TRUE, data_file = NULL, ...) { + local_var_response <- self$ImportPreprocessedDataWithHttpInfo(project_id, input_files, ignore_formulas, allow_ms1_only, 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) { @@ -1161,14 +1183,14 @@ ProjectsApi <- R6::R6Class( #' Import already preprocessed ms/ms data from various formats into the specified project Possible formats (ms, mgf, cef, msp) #' #' @param project_id project-space to import into. + #' @param input_files files to import into project #' @param ignore_formulas (optional) No description (default value: FALSE) #' @param allow_ms1_only (optional) No description (default value: TRUE) - #' @param input_files (optional) No description #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (ImportResult) with additional information such as HTTP status code, headers - ImportPreprocessedDataWithHttpInfo = function(project_id, ignore_formulas = FALSE, allow_ms1_only = TRUE, input_files = NULL, data_file = NULL, ...) { + ImportPreprocessedDataWithHttpInfo = function(project_id, input_files, ignore_formulas = FALSE, allow_ms1_only = TRUE, data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -1182,6 +1204,10 @@ ProjectsApi <- R6::R6Class( stop("Missing required parameter `project_id`.") } + if (missing(`input_files`)) { + stop("Missing required parameter `input_files`.") + } + @@ -1246,16 +1272,16 @@ ProjectsApi <- R6::R6Class( #' Import ms/ms data from the given format into the specified project-space as background job. #' #' @param project_id project-space to import into. + #' @param input_files #' @param ignore_formulas (optional) No description (default value: FALSE) #' @param allow_ms1_only (optional) No description (default value: TRUE) - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["progress"]) - #' @param input_files (optional) No description + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [progress]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return Job - ImportPreprocessedDataAsJob = function(project_id, ignore_formulas = FALSE, allow_ms1_only = TRUE, opt_fields = list("progress"), input_files = NULL, data_file = NULL, ...) { - local_var_response <- self$ImportPreprocessedDataAsJobWithHttpInfo(project_id, ignore_formulas, allow_ms1_only, opt_fields, input_files, data_file = data_file, ...) + ImportPreprocessedDataAsJob = function(project_id, input_files, ignore_formulas = FALSE, allow_ms1_only = TRUE, opt_fields = list(progress), data_file = NULL, ...) { + local_var_response <- self$ImportPreprocessedDataAsJobWithHttpInfo(project_id, input_files, ignore_formulas, allow_ms1_only, opt_fields, 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) { @@ -1271,15 +1297,15 @@ ProjectsApi <- R6::R6Class( #' Import ms/ms data from the given format into the specified project-space as background job. #' #' @param project_id project-space to import into. + #' @param input_files #' @param ignore_formulas (optional) No description (default value: FALSE) #' @param allow_ms1_only (optional) No description (default value: TRUE) - #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["progress"]) - #' @param input_files (optional) No description + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: [progress]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (Job) with additional information such as HTTP status code, headers - ImportPreprocessedDataAsJobWithHttpInfo = function(project_id, ignore_formulas = FALSE, allow_ms1_only = TRUE, opt_fields = list("progress"), input_files = NULL, data_file = NULL, ...) { + ImportPreprocessedDataAsJobWithHttpInfo = function(project_id, input_files, ignore_formulas = FALSE, allow_ms1_only = TRUE, opt_fields = list(progress), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -1293,6 +1319,10 @@ ProjectsApi <- R6::R6Class( stop("Missing required parameter `project_id`.") } + if (missing(`input_files`)) { + stop("Missing required parameter `input_files`.") + } + @@ -1368,12 +1398,12 @@ ProjectsApi <- R6::R6Class( #' #' @param project_id unique name/identifier that shall be used to access the opened project-space. Must consist only of [a-zA-Z0-9_-]. #' @param path_to_project (optional) 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. - #' @param opt_fields (optional) No description (default value: ["none"]) + #' @param opt_fields (optional) No description (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return ProjectInfo - OpenProject = function(project_id, path_to_project = NULL, opt_fields = list("none"), data_file = NULL, ...) { + OpenProject = function(project_id, path_to_project = NULL, opt_fields = list(NULL), data_file = NULL, ...) { local_var_response <- self$OpenProjectWithHttpInfo(project_id, path_to_project, opt_fields, data_file = data_file, ...) if (local_var_response$status_code >= 200 && local_var_response$status_code <= 299) { local_var_response$content @@ -1391,12 +1421,12 @@ ProjectsApi <- R6::R6Class( #' #' @param project_id unique name/identifier that shall be used to access the opened project-space. Must consist only of [a-zA-Z0-9_-]. #' @param path_to_project (optional) 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. - #' @param opt_fields (optional) No description (default value: ["none"]) + #' @param opt_fields (optional) No description (default value: [none]) #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (ProjectInfo) with additional information such as HTTP status code, headers - OpenProjectWithHttpInfo = function(project_id, path_to_project = NULL, opt_fields = list("none"), data_file = NULL, ...) { + OpenProjectWithHttpInfo = function(project_id, path_to_project = NULL, opt_fields = list(NULL), data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() diff --git a/client-api_r/generated/R/quantification_table_experimental.R b/client-api_r/generated/R/quant_table_experimental.R similarity index 60% rename from client-api_r/generated/R/quantification_table_experimental.R rename to client-api_r/generated/R/quant_table_experimental.R index 2f7bf824..7c0f18eb 100644 --- a/client-api_r/generated/R/quantification_table_experimental.R +++ b/client-api_r/generated/R/quant_table_experimental.R @@ -1,15 +1,14 @@ -#' Create a new QuantificationTableExperimental +#' Create a new QuantTableExperimental #' #' @description #' EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable. #' #' @docType class -#' @title QuantificationTableExperimental -#' @description QuantificationTableExperimental Class +#' @title QuantTableExperimental +#' @description QuantTableExperimental Class #' @format An \code{R6Class} generator object -#' @field quantificationType character [optional] +#' @field quantificationMeasure character [optional] #' @field rowType character [optional] -#' @field columnType character [optional] #' @field rowIds list(integer) [optional] #' @field columnIds list(integer) [optional] #' @field rowNames list(character) [optional] @@ -18,12 +17,11 @@ #' @importFrom R6 R6Class #' @importFrom jsonlite fromJSON toJSON #' @export -QuantificationTableExperimental <- R6::R6Class( - "QuantificationTableExperimental", +QuantTableExperimental <- R6::R6Class( + "QuantTableExperimental", public = list( - `quantificationType` = NULL, + `quantificationMeasure` = NULL, `rowType` = NULL, - `columnType` = NULL, `rowIds` = NULL, `columnIds` = NULL, `rowNames` = NULL, @@ -31,45 +29,35 @@ QuantificationTableExperimental <- R6::R6Class( `values` = NULL, #' @description - #' Initialize a new QuantificationTableExperimental class. + #' Initialize a new QuantTableExperimental class. #' - #' @param quantificationType quantificationType + #' @param quantificationMeasure quantificationMeasure #' @param rowType rowType - #' @param columnType columnType #' @param rowIds rowIds #' @param columnIds columnIds #' @param rowNames rowNames #' @param columnNames columnNames #' @param values values #' @param ... Other optional arguments. - initialize = function(`quantificationType` = NULL, `rowType` = NULL, `columnType` = NULL, `rowIds` = NULL, `columnIds` = NULL, `rowNames` = NULL, `columnNames` = NULL, `values` = NULL, ...) { - if (!is.null(`quantificationType`)) { - if (!(`quantificationType` %in% c("APEX_HEIGHT"))) { - stop(paste("Error! \"", `quantificationType`, "\" cannot be assigned to `quantificationType`. Must be \"APEX_HEIGHT\".", sep = "")) + initialize = function(`quantificationMeasure` = NULL, `rowType` = NULL, `rowIds` = NULL, `columnIds` = NULL, `rowNames` = NULL, `columnNames` = NULL, `values` = NULL, ...) { + if (!is.null(`quantificationMeasure`)) { + if (!(`quantificationMeasure` %in% c("APEX_INTENSITY", "AREA_UNDER_CURVE"))) { + stop(paste("Error! \"", `quantificationMeasure`, "\" cannot be assigned to `quantificationMeasure`. Must be \"APEX_INTENSITY\", \"AREA_UNDER_CURVE\".", sep = "")) } - if (!(is.character(`quantificationType`) && length(`quantificationType`) == 1)) { - stop(paste("Error! Invalid data for `quantificationType`. Must be a string:", `quantificationType`)) + if (!(is.character(`quantificationMeasure`) && length(`quantificationMeasure`) == 1)) { + stop(paste("Error! Invalid data for `quantificationMeasure`. Must be a string:", `quantificationMeasure`)) } - self$`quantificationType` <- `quantificationType` + self$`quantificationMeasure` <- `quantificationMeasure` } if (!is.null(`rowType`)) { - if (!(`rowType` %in% c("FEATURES"))) { - stop(paste("Error! \"", `rowType`, "\" cannot be assigned to `rowType`. Must be \"FEATURES\".", sep = "")) + if (!(`rowType` %in% c("FEATURES", "COMPOUNDS"))) { + stop(paste("Error! \"", `rowType`, "\" cannot be assigned to `rowType`. Must be \"FEATURES\", \"COMPOUNDS\".", sep = "")) } if (!(is.character(`rowType`) && length(`rowType`) == 1)) { stop(paste("Error! Invalid data for `rowType`. Must be a string:", `rowType`)) } self$`rowType` <- `rowType` } - if (!is.null(`columnType`)) { - if (!(`columnType` %in% c("SAMPLES"))) { - stop(paste("Error! \"", `columnType`, "\" cannot be assigned to `columnType`. Must be \"SAMPLES\".", sep = "")) - } - if (!(is.character(`columnType`) && length(`columnType`) == 1)) { - stop(paste("Error! Invalid data for `columnType`. Must be a string:", `columnType`)) - } - self$`columnType` <- `columnType` - } if (!is.null(`rowIds`)) { stopifnot(is.vector(`rowIds`), length(`rowIds`) != 0) sapply(`rowIds`, function(x) stopifnot(is.character(x))) @@ -109,9 +97,9 @@ QuantificationTableExperimental <- R6::R6Class( #' #' Convert the R6 object to a list to work more easily with other tooling. #' - #' @return QuantificationTableExperimental as a base R list. + #' @return QuantTableExperimental as a base R list. #' @examples - #' # convert array of QuantificationTableExperimental (x) to a data frame + #' # convert array of QuantTableExperimental (x) to a data frame #' \dontrun{ #' library(purrr) #' library(tibble) @@ -123,71 +111,61 @@ QuantificationTableExperimental <- R6::R6Class( }, #' @description - #' Convert QuantificationTableExperimental to a base R type + #' Convert QuantTableExperimental to a base R type #' #' @return A base R type, e.g. a list or numeric/character array. toSimpleType = function() { - QuantificationTableExperimentalObject <- list() - if (!is.null(self$`quantificationType`)) { - QuantificationTableExperimentalObject[["quantificationType"]] <- - self$`quantificationType` + QuantTableExperimentalObject <- list() + if (!is.null(self$`quantificationMeasure`)) { + QuantTableExperimentalObject[["quantificationMeasure"]] <- + self$`quantificationMeasure` } if (!is.null(self$`rowType`)) { - QuantificationTableExperimentalObject[["rowType"]] <- + QuantTableExperimentalObject[["rowType"]] <- self$`rowType` } - if (!is.null(self$`columnType`)) { - QuantificationTableExperimentalObject[["columnType"]] <- - self$`columnType` - } if (!is.null(self$`rowIds`)) { - QuantificationTableExperimentalObject[["rowIds"]] <- + QuantTableExperimentalObject[["rowIds"]] <- self$`rowIds` } if (!is.null(self$`columnIds`)) { - QuantificationTableExperimentalObject[["columnIds"]] <- + QuantTableExperimentalObject[["columnIds"]] <- self$`columnIds` } if (!is.null(self$`rowNames`)) { - QuantificationTableExperimentalObject[["rowNames"]] <- + QuantTableExperimentalObject[["rowNames"]] <- self$`rowNames` } if (!is.null(self$`columnNames`)) { - QuantificationTableExperimentalObject[["columnNames"]] <- + QuantTableExperimentalObject[["columnNames"]] <- self$`columnNames` } if (!is.null(self$`values`)) { - QuantificationTableExperimentalObject[["values"]] <- + QuantTableExperimentalObject[["values"]] <- lapply(self$`values`, function(x) x$toSimpleType()) } - return(QuantificationTableExperimentalObject) + return(QuantTableExperimentalObject) }, #' @description - #' Deserialize JSON string into an instance of QuantificationTableExperimental + #' Deserialize JSON string into an instance of QuantTableExperimental #' #' @param input_json the JSON input - #' @return the instance of QuantificationTableExperimental + #' @return the instance of QuantTableExperimental fromJSON = function(input_json) { this_object <- jsonlite::fromJSON(input_json) - if (!is.null(this_object$`quantificationType`)) { - if (!is.null(this_object$`quantificationType`) && !(this_object$`quantificationType` %in% c("APEX_HEIGHT"))) { - stop(paste("Error! \"", this_object$`quantificationType`, "\" cannot be assigned to `quantificationType`. Must be \"APEX_HEIGHT\".", sep = "")) + if (!is.null(this_object$`quantificationMeasure`)) { + if (!is.null(this_object$`quantificationMeasure`) && !(this_object$`quantificationMeasure` %in% c("APEX_INTENSITY", "AREA_UNDER_CURVE"))) { + stop(paste("Error! \"", this_object$`quantificationMeasure`, "\" cannot be assigned to `quantificationMeasure`. Must be \"APEX_INTENSITY\", \"AREA_UNDER_CURVE\".", sep = "")) } - self$`quantificationType` <- this_object$`quantificationType` + self$`quantificationMeasure` <- this_object$`quantificationMeasure` } if (!is.null(this_object$`rowType`)) { - if (!is.null(this_object$`rowType`) && !(this_object$`rowType` %in% c("FEATURES"))) { - stop(paste("Error! \"", this_object$`rowType`, "\" cannot be assigned to `rowType`. Must be \"FEATURES\".", sep = "")) + if (!is.null(this_object$`rowType`) && !(this_object$`rowType` %in% c("FEATURES", "COMPOUNDS"))) { + stop(paste("Error! \"", this_object$`rowType`, "\" cannot be assigned to `rowType`. Must be \"FEATURES\", \"COMPOUNDS\".", sep = "")) } self$`rowType` <- this_object$`rowType` } - if (!is.null(this_object$`columnType`)) { - if (!is.null(this_object$`columnType`) && !(this_object$`columnType` %in% c("SAMPLES"))) { - stop(paste("Error! \"", this_object$`columnType`, "\" cannot be assigned to `columnType`. Must be \"SAMPLES\".", sep = "")) - } - self$`columnType` <- this_object$`columnType` - } if (!is.null(this_object$`rowIds`)) { self$`rowIds` <- ApiClient$new()$deserializeObj(this_object$`rowIds`, "array[integer]", loadNamespace("Rsirius")) } @@ -210,7 +188,7 @@ QuantificationTableExperimental <- R6::R6Class( #' To JSON String #' #' @param ... Parameters passed to `jsonlite::toJSON` - #' @return QuantificationTableExperimental in JSON format + #' @return QuantTableExperimental in JSON format toJSONString = function(...) { simple <- self$toSimpleType() json <- jsonlite::toJSON(simple, auto_unbox = TRUE, digits = NA, null = 'null', ...) @@ -218,24 +196,20 @@ QuantificationTableExperimental <- R6::R6Class( }, #' @description - #' Deserialize JSON string into an instance of QuantificationTableExperimental + #' Deserialize JSON string into an instance of QuantTableExperimental #' #' @param input_json the JSON input - #' @return the instance of QuantificationTableExperimental + #' @return the instance of QuantTableExperimental fromJSONString = function(input_json) { this_object <- jsonlite::fromJSON(input_json) - if (!is.null(this_object$`quantificationType`) && !(this_object$`quantificationType` %in% c("APEX_HEIGHT"))) { - stop(paste("Error! \"", this_object$`quantificationType`, "\" cannot be assigned to `quantificationType`. Must be \"APEX_HEIGHT\".", sep = "")) + if (!is.null(this_object$`quantificationMeasure`) && !(this_object$`quantificationMeasure` %in% c("APEX_INTENSITY", "AREA_UNDER_CURVE"))) { + stop(paste("Error! \"", this_object$`quantificationMeasure`, "\" cannot be assigned to `quantificationMeasure`. Must be \"APEX_INTENSITY\", \"AREA_UNDER_CURVE\".", sep = "")) } - self$`quantificationType` <- this_object$`quantificationType` - if (!is.null(this_object$`rowType`) && !(this_object$`rowType` %in% c("FEATURES"))) { - stop(paste("Error! \"", this_object$`rowType`, "\" cannot be assigned to `rowType`. Must be \"FEATURES\".", sep = "")) + self$`quantificationMeasure` <- this_object$`quantificationMeasure` + if (!is.null(this_object$`rowType`) && !(this_object$`rowType` %in% c("FEATURES", "COMPOUNDS"))) { + stop(paste("Error! \"", this_object$`rowType`, "\" cannot be assigned to `rowType`. Must be \"FEATURES\", \"COMPOUNDS\".", sep = "")) } self$`rowType` <- this_object$`rowType` - if (!is.null(this_object$`columnType`) && !(this_object$`columnType` %in% c("SAMPLES"))) { - stop(paste("Error! \"", this_object$`columnType`, "\" cannot be assigned to `columnType`. Must be \"SAMPLES\".", sep = "")) - } - self$`columnType` <- this_object$`columnType` self$`rowIds` <- ApiClient$new()$deserializeObj(this_object$`rowIds`, "array[integer]", loadNamespace("Rsirius")) self$`columnIds` <- ApiClient$new()$deserializeObj(this_object$`columnIds`, "array[integer]", loadNamespace("Rsirius")) self$`rowNames` <- ApiClient$new()$deserializeObj(this_object$`rowNames`, "array[character]", loadNamespace("Rsirius")) @@ -245,7 +219,7 @@ QuantificationTableExperimental <- R6::R6Class( }, #' @description - #' Validate JSON input with respect to QuantificationTableExperimental and throw an exception if invalid + #' Validate JSON input with respect to QuantTableExperimental and throw an exception if invalid #' #' @param input the JSON input validateJSON = function(input) { @@ -255,7 +229,7 @@ QuantificationTableExperimental <- R6::R6Class( #' @description #' To string (JSON format) #' - #' @return String representation of QuantificationTableExperimental + #' @return String representation of QuantTableExperimental toString = function() { self$toJSONString() }, @@ -288,13 +262,13 @@ QuantificationTableExperimental <- R6::R6Class( lock_class = TRUE ) ## Uncomment below to unlock the class to allow modifications of the method or field -# QuantificationTableExperimental$unlock() +# QuantTableExperimental$unlock() # ## Below is an example to define the print function -# QuantificationTableExperimental$set("public", "print", function(...) { +# QuantTableExperimental$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 -# QuantificationTableExperimental$lock() +# QuantTableExperimental$lock() diff --git a/client-api_r/generated/R/rsirius_api.R b/client-api_r/generated/R/rsirius_api.R index 2ed4428d..ed214441 100644 --- a/client-api_r/generated/R/rsirius_api.R +++ b/client-api_r/generated/R/rsirius_api.R @@ -19,28 +19,34 @@ #' @format An \code{R6Class} generator object #' @field api_client API client #' @field actuator_api an instance of ActuatorApi +#' @field compound_statistics_api an instance of CompoundStatisticsApi #' @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 #' @field projects_api an instance of ProjectsApi +#' @field runs_api an instance of RunsApi #' @field searchable_databases_api an instance of SearchableDatabasesApi +#' @field tags_api an instance of TagsApi #' @export rsirius_api <- R6::R6Class( "rsirius_api", public = list( api_client = NULL, actuator_api = NULL, + compound_statistics_api = NULL, compounds_api = NULL, + feature_statistics_api = NULL, features_api = NULL, - gui_api = NULL, info_api = NULL, jobs_api = NULL, login_and_account_api = NULL, projects_api = NULL, + runs_api = NULL, searchable_databases_api = NULL, + tags_api = NULL, #' Initialize a new Rsirius API Class. #' #' @description @@ -57,11 +63,13 @@ rsirius_api <- R6::R6Class( self$actuator_api <- ActuatorApi$new(self$api_client) + self$compound_statistics_api <- CompoundStatisticsApi$new(self$api_client) + self$compounds_api <- CompoundsApi$new(self$api_client) - self$features_api <- FeaturesApi$new(self$api_client) + self$feature_statistics_api <- FeatureStatisticsApi$new(self$api_client) - self$gui_api <- GuiApi$new(self$api_client) + self$features_api <- FeaturesApi$new(self$api_client) self$info_api <- InfoApi$new(self$api_client) @@ -71,8 +79,12 @@ rsirius_api <- R6::R6Class( self$projects_api <- ProjectsApi$new(self$api_client) + self$runs_api <- RunsApi$new(self$api_client) + self$searchable_databases_api <- SearchableDatabasesApi$new(self$api_client) + self$tags_api <- TagsApi$new(self$api_client) + } ) ) diff --git a/client-api_r/generated/R/run.R b/client-api_r/generated/R/run.R new file mode 100644 index 00000000..ef77c7a7 --- /dev/null +++ b/client-api_r/generated/R/run.R @@ -0,0 +1,276 @@ +#' Create a new Run +#' +#' @description +#' Run Class +#' +#' @docType class +#' @title Run +#' @description Run Class +#' @format An \code{R6Class} generator object +#' @field runId Identifier character [optional] +#' @field name Informative, human-readable name of this run character [optional] +#' @field source Source location character [optional] +#' @field chromatography character [optional] +#' @field ionization character [optional] +#' @field fragmentation character [optional] +#' @field massAnalyzers list(character) [optional] +#' @field tags Key: tagName, value: tag named list(\link{Tag}) [optional] +#' @importFrom R6 R6Class +#' @importFrom jsonlite fromJSON toJSON +#' @export +Run <- R6::R6Class( + "Run", + public = list( + `runId` = NULL, + `name` = NULL, + `source` = NULL, + `chromatography` = NULL, + `ionization` = NULL, + `fragmentation` = NULL, + `massAnalyzers` = NULL, + `tags` = NULL, + + #' @description + #' Initialize a new Run class. + #' + #' @param runId Identifier + #' @param name Informative, human-readable name of this run + #' @param source Source location + #' @param chromatography chromatography + #' @param ionization ionization + #' @param fragmentation fragmentation + #' @param massAnalyzers massAnalyzers + #' @param tags Key: tagName, value: tag + #' @param ... Other optional arguments. + initialize = function(`runId` = NULL, `name` = NULL, `source` = NULL, `chromatography` = NULL, `ionization` = NULL, `fragmentation` = NULL, `massAnalyzers` = NULL, `tags` = NULL, ...) { + if (!is.null(`runId`)) { + if (!(is.character(`runId`) && length(`runId`) == 1)) { + stop(paste("Error! Invalid data for `runId`. Must be a string:", `runId`)) + } + self$`runId` <- `runId` + } + if (!is.null(`name`)) { + if (!(is.character(`name`) && length(`name`) == 1)) { + stop(paste("Error! Invalid data for `name`. Must be a string:", `name`)) + } + self$`name` <- `name` + } + if (!is.null(`source`)) { + if (!(is.character(`source`) && length(`source`) == 1)) { + stop(paste("Error! Invalid data for `source`. Must be a string:", `source`)) + } + self$`source` <- `source` + } + if (!is.null(`chromatography`)) { + if (!(is.character(`chromatography`) && length(`chromatography`) == 1)) { + stop(paste("Error! Invalid data for `chromatography`. Must be a string:", `chromatography`)) + } + self$`chromatography` <- `chromatography` + } + if (!is.null(`ionization`)) { + if (!(is.character(`ionization`) && length(`ionization`) == 1)) { + stop(paste("Error! Invalid data for `ionization`. Must be a string:", `ionization`)) + } + self$`ionization` <- `ionization` + } + if (!is.null(`fragmentation`)) { + if (!(is.character(`fragmentation`) && length(`fragmentation`) == 1)) { + stop(paste("Error! Invalid data for `fragmentation`. Must be a string:", `fragmentation`)) + } + self$`fragmentation` <- `fragmentation` + } + if (!is.null(`massAnalyzers`)) { + stopifnot(is.vector(`massAnalyzers`), length(`massAnalyzers`) != 0) + sapply(`massAnalyzers`, function(x) stopifnot(is.character(x))) + self$`massAnalyzers` <- `massAnalyzers` + } + if (!is.null(`tags`)) { + stopifnot(is.vector(`tags`), length(`tags`) != 0) + sapply(`tags`, function(x) stopifnot(R6::is.R6(x))) + self$`tags` <- `tags` + } + }, + + #' @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 Run as a base R list. + #' @examples + #' # convert array of Run (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 Run to a base R type + #' + #' @return A base R type, e.g. a list or numeric/character array. + toSimpleType = function() { + RunObject <- list() + if (!is.null(self$`runId`)) { + RunObject[["runId"]] <- + self$`runId` + } + if (!is.null(self$`name`)) { + RunObject[["name"]] <- + self$`name` + } + if (!is.null(self$`source`)) { + RunObject[["source"]] <- + self$`source` + } + if (!is.null(self$`chromatography`)) { + RunObject[["chromatography"]] <- + self$`chromatography` + } + if (!is.null(self$`ionization`)) { + RunObject[["ionization"]] <- + self$`ionization` + } + if (!is.null(self$`fragmentation`)) { + RunObject[["fragmentation"]] <- + self$`fragmentation` + } + if (!is.null(self$`massAnalyzers`)) { + RunObject[["massAnalyzers"]] <- + self$`massAnalyzers` + } + if (!is.null(self$`tags`)) { + RunObject[["tags"]] <- + lapply(self$`tags`, function(x) x$toSimpleType()) + } + return(RunObject) + }, + + #' @description + #' Deserialize JSON string into an instance of Run + #' + #' @param input_json the JSON input + #' @return the instance of Run + fromJSON = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`runId`)) { + self$`runId` <- this_object$`runId` + } + if (!is.null(this_object$`name`)) { + self$`name` <- this_object$`name` + } + if (!is.null(this_object$`source`)) { + self$`source` <- this_object$`source` + } + if (!is.null(this_object$`chromatography`)) { + self$`chromatography` <- this_object$`chromatography` + } + if (!is.null(this_object$`ionization`)) { + self$`ionization` <- this_object$`ionization` + } + if (!is.null(this_object$`fragmentation`)) { + self$`fragmentation` <- this_object$`fragmentation` + } + if (!is.null(this_object$`massAnalyzers`)) { + self$`massAnalyzers` <- ApiClient$new()$deserializeObj(this_object$`massAnalyzers`, "array[character]", loadNamespace("Rsirius")) + } + if (!is.null(this_object$`tags`)) { + self$`tags` <- ApiClient$new()$deserializeObj(this_object$`tags`, "map(Tag)", loadNamespace("Rsirius")) + } + self + }, + + #' @description + #' To JSON String + #' + #' @param ... Parameters passed to `jsonlite::toJSON` + #' @return Run 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 Run + #' + #' @param input_json the JSON input + #' @return the instance of Run + fromJSONString = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + self$`runId` <- this_object$`runId` + self$`name` <- this_object$`name` + self$`source` <- this_object$`source` + self$`chromatography` <- this_object$`chromatography` + self$`ionization` <- this_object$`ionization` + self$`fragmentation` <- this_object$`fragmentation` + self$`massAnalyzers` <- ApiClient$new()$deserializeObj(this_object$`massAnalyzers`, "array[character]", loadNamespace("Rsirius")) + self$`tags` <- ApiClient$new()$deserializeObj(this_object$`tags`, "map(Tag)", loadNamespace("Rsirius")) + self + }, + + #' @description + #' Validate JSON input with respect to Run 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 Run + 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 +# Run$unlock() +# +## Below is an example to define the print function +# Run$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 +# Run$lock() + diff --git a/client-api_r/generated/R/run_opt_field.R b/client-api_r/generated/R/run_opt_field.R new file mode 100644 index 00000000..d2fbea39 --- /dev/null +++ b/client-api_r/generated/R/run_opt_field.R @@ -0,0 +1,90 @@ +#' @docType class +#' @title RunOptField +#' @description RunOptField Class +#' @format An \code{R6Class} generator object +#' @importFrom R6 R6Class +#' @importFrom jsonlite fromJSON toJSON +#' @export +RunOptField <- R6::R6Class( + "RunOptField", + public = list( + + #' @description + #' Initialize a new RunOptField class. + #' + #' @param ... Optional arguments. + initialize = function(...) { + local.optional.var <- list(...) + val <- unlist(local.optional.var) + enumvec <- .parse_RunOptField() + + if (length(val) == 0L) { + val = "DUMMY_ENUM" + } else { + stopifnot(length(val) == 1L) + } + + if (!val %in% enumvec) { + if (!(val=="DUMMY_ENUM")) { + stop("Use one of the valid values: ", + paste0(enumvec, collapse = ", ")) + } + warning("Initializing RunOptField with DUMMY_ENUM. Use one of the valid values: ", + paste0(enumvec, collapse = ", "), + ". If you did not manually initialize RunOptField, this may already be overwritten by an enum loaded from a JSON config.") + } + private$value <- val + }, + + #' @description + #' To JSON String + #' + #' @return RunOptField in JSON format + toJSON = function() { + jsonlite::toJSON(private$value, auto_unbox = TRUE) + }, + + #' @description + #' Deserialize JSON string into an instance of RunOptField + #' + #' @param input_json the JSON input + #' + #' @return the instance of RunOptField + fromJSON = function(input_json) { + private$value <- jsonlite::fromJSON(input_json, + simplifyVector = FALSE) + self + }, + + #' @description + #' To JSON String + #' + #' @return RunOptField in JSON format + toJSONString = function() { + as.character(jsonlite::toJSON(private$value, + auto_unbox = TRUE)) + }, + + #' @description + #' Deserialize JSON string into an instance of RunOptField + #' + #' @param input_json the JSON input + #' + #' @return the instance of RunOptField + fromJSONString = function(input_json) { + private$value <- jsonlite::fromJSON(input_json, + simplifyVector = FALSE) + self + } + ), + private = list( + value = NULL + ) +) + +# add to utils.R +.parse_RunOptField <- function(vals) { + res <- gsub("^\\[|\\]$", "", "[none, tags]") + unlist(strsplit(res, ", ")) +} + diff --git a/client-api_r/generated/R/runs_api.R b/client-api_r/generated/R/runs_api.R new file mode 100644 index 00000000..850e363a --- /dev/null +++ b/client-api_r/generated/R/runs_api.R @@ -0,0 +1,1130 @@ +#' 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 Runs operations +#' @description RunsApi +#' @format An \code{R6Class} generator object +#' @field api_client Handles the client-server communication. +#' +#' @examples +#' \dontrun{ +#' #################### AddTagsToRunExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to add to. +#' var_run_id <- "run_id_example" # character | run to add tags to. +#' var_tag <- c(Tag$new("tagName_example", TODO)) # array[Tag] | tags to add. +#' +#' #[EXPERIMENTAL] Add tags to a run in the project +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$AddTagsToRunExperimental(var_project_id, var_run_id, var_tagdata_file = "result.txt") +#' result <- api_instance$runs_api$AddTagsToRunExperimental(var_project_id, var_run_id, var_tag) +#' dput(result) +#' +#' +#' #################### ComputeFoldChangeForBlankSubtraction #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to compute the fold change in. +#' var_sample_type_fold_change_request <- SampleTypeFoldChangeRequest$new(c("sampleRunIds_example"), c("blankRunIds_example"), c("controlRunIds_example")) # SampleTypeFoldChangeRequest | request with lists of run IDs that are sample, blank, and control runs +#' var_opt_fields <- c("none") # array[character] | job opt fields. (Optional) +#' +#' #**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$ComputeFoldChangeForBlankSubtraction(var_project_id, var_sample_type_fold_change_request, opt_fields = var_opt_fieldsdata_file = "result.txt") +#' result <- api_instance$runs_api$ComputeFoldChangeForBlankSubtraction(var_project_id, var_sample_type_fold_change_request, opt_fields = var_opt_fields) +#' dput(result) +#' +#' +#' #################### GetRunExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to read from. +#' var_run_id <- "run_id_example" # character | identifier of run to access. +#' var_opt_fields <- c(RunOptField$new()) # array[RunOptField] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) +#' +#' #[EXPERIMENTAL] Get run with the given identifier from the specified project-space +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetRunExperimental(var_project_id, var_run_id, opt_fields = var_opt_fieldsdata_file = "result.txt") +#' result <- api_instance$runs_api$GetRunExperimental(var_project_id, var_run_id, opt_fields = var_opt_fields) +#' dput(result) +#' +#' +#' #################### GetRunPageExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to read from. +#' var_page <- 0 # integer | Zero-based page index (0..N) (Optional) +#' var_size <- 20 # integer | The size of the page to be returned (Optional) +#' var_sort <- c("inner_example") # array[character] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (Optional) +#' var_opt_fields <- c(RunOptField$new()) # array[RunOptField] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) +#' +#' #[EXPERIMENTAL] Get all available runs in the given project-space +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetRunPageExperimental(var_project_id, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fieldsdata_file = "result.txt") +#' result <- api_instance$runs_api$GetRunPageExperimental(var_project_id, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fields) +#' dput(result) +#' +#' +#' #################### GetRunsByGroupExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to delete from. +#' var_group_name <- "group_name_example" # character | tag group name. +#' var_page <- 0 # integer | Zero-based page index (0..N) (Optional) +#' var_size <- 20 # integer | The size of the page to be returned (Optional) +#' var_sort <- c("inner_example") # array[character] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (Optional) +#' var_opt_fields <- c(RunOptField$new()) # array[RunOptField] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) +#' +#' #[EXPERIMENTAL] Get runs by tag group +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetRunsByGroupExperimental(var_project_id, var_group_name, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fieldsdata_file = "result.txt") +#' result <- api_instance$runs_api$GetRunsByGroupExperimental(var_project_id, var_group_name, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fields) +#' dput(result) +#' +#' +#' #################### GetRunsByTagExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project space to get runs from. +#' var_filter <- "" # character | tag filter. (Optional) +#' var_page <- 0 # integer | Zero-based page index (0..N) (Optional) +#' var_size <- 20 # integer | The size of the page to be returned (Optional) +#' var_sort <- c("inner_example") # array[character] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (Optional) +#' var_opt_fields <- c(RunOptField$new()) # array[RunOptField] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) +#' +#' #[EXPERIMENTAL] Get runs by tag +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetRunsByTagExperimental(var_project_id, filter = var_filter, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fieldsdata_file = "result.txt") +#' result <- api_instance$runs_api$GetRunsByTagExperimental(var_project_id, filter = var_filter, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fields) +#' dput(result) +#' +#' +#' #################### GetTagsForRunExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to get from. +#' var_object_id <- "object_id_example" # character | RunId to get tags for. +#' +#' #[EXPERIMENTAL] Get all tags associated with this Run +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetTagsForRunExperimental(var_project_id, var_object_iddata_file = "result.txt") +#' result <- api_instance$runs_api$GetTagsForRunExperimental(var_project_id, var_object_id) +#' dput(result) +#' +#' +#' #################### RemoveTagFromRunExperimental #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to delete from. +#' var_run_id <- "run_id_example" # character | run to delete tag from. +#' var_tag_name <- "tag_name_example" # character | name of the tag to delete. +#' +#' #[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space +#' api_instance <- rsirius_api$new() +#' +#' api_instance$runs_api$RemoveTagFromRunExperimental(var_project_id, var_run_id, var_tag_name) +#' +#' +#' } +#' @importFrom R6 R6Class +#' @importFrom base64enc base64encode +#' @export +RunsApi <- R6::R6Class( + "RunsApi", + public = list( + api_client = NULL, + + #' @description + #' Initialize a new RunsApi. + #' + #' @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 + #' [EXPERIMENTAL] Add tags to a run in the project + #' + #' @param project_id project-space to add to. + #' @param run_id run to add tags to. + #' @param tag tags to add. + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return array[Tag] + AddTagsToRunExperimental = function(project_id, run_id, tag, data_file = NULL, ...) { + local_var_response <- self$AddTagsToRunExperimentalWithHttpInfo(project_id, run_id, tag, 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 + #' [EXPERIMENTAL] Add tags to a run in the project + #' + #' @param project_id project-space to add to. + #' @param run_id run to add tags to. + #' @param tag tags to add. + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (array[Tag]) with additional information such as HTTP status code, headers + AddTagsToRunExperimentalWithHttpInfo = function(project_id, run_id, tag, 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`.") + } + + if (missing(`run_id`)) { + stop("Missing required parameter `run_id`.") + } + + if (missing(`tag`)) { + stop("Missing required parameter `tag`.") + } + + + + + if (!is.null(`tag`)) { + body.items <- paste(unlist(lapply(`tag`, function(param) { + param$toJSONString() + })), collapse = ",") + local_var_body <- paste0("[", body.items, "]") + } else { + body <- NULL + } + + local_var_url_path <- "/api/projects/{projectId}/runs/tags/{runId}" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`run_id`)) { + local_var_url_path <- gsub("\\{runId\\}", URLencode(as.character(`run_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("application/json") + + local_var_resp <- self$api_client$CallApi(url = paste0(self$api_client$base_path, local_var_url_path), + method = "PUT", + 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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "array[Tag]", 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 + #' **EXPERIMENTAL** Compute the fold changes that are required for the fold change filter + #' + #' @param project_id project-space to compute the fold change in. + #' @param sample_type_fold_change_request request with lists of run IDs that are sample, blank, and control runs + #' @param opt_fields (optional) job opt fields. (default value: ["progress"]) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return Job + ComputeFoldChangeForBlankSubtraction = function(project_id, sample_type_fold_change_request, opt_fields = list("progress"), data_file = NULL, ...) { + local_var_response <- self$ComputeFoldChangeForBlankSubtractionWithHttpInfo(project_id, sample_type_fold_change_request, opt_fields, 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 + #' **EXPERIMENTAL** Compute the fold changes that are required for the fold change filter + #' + #' @param project_id project-space to compute the fold change in. + #' @param sample_type_fold_change_request request with lists of run IDs that are sample, blank, and control runs + #' @param opt_fields (optional) job opt fields. (default value: ["progress"]) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (Job) with additional information such as HTTP status code, headers + ComputeFoldChangeForBlankSubtractionWithHttpInfo = function(project_id, sample_type_fold_change_request, opt_fields = list("progress"), 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`.") + } + + if (missing(`sample_type_fold_change_request`)) { + stop("Missing required parameter `sample_type_fold_change_request`.") + } + + + + + # explore + for (query_item in `opt_fields`) { + # validate enum values + if (!is.null(query_item) && !(query_item %in% c("none", "command", "progress", "affectedIds"))) { + stop("Invalid value for opt_fields when calling RunsApi$ComputeFoldChangeForBlankSubtraction. Must be [none, command, progress, affectedIds].") + } + query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) + } + + if (!is.null(`sample_type_fold_change_request`)) { + local_var_body <- `sample_type_fold_change_request`$toJSONString() + } else { + body <- NULL + } + + local_var_url_path <- "/api/projects/{projectId}/runs/blanksubtract/compute" + 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("application/json") + + local_var_resp <- self$api_client$CallApi(url = paste0(self$api_client$base_path, local_var_url_path), + method = "PUT", + 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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "Job", 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 + #' [EXPERIMENTAL] Get run with the given identifier from the specified project-space + #' + #' @param project_id project-space to read from. + #' @param run_id identifier of run to access. + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: []) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return Run + GetRunExperimental = function(project_id, run_id, opt_fields = list(), data_file = NULL, ...) { + local_var_response <- self$GetRunExperimentalWithHttpInfo(project_id, run_id, opt_fields, 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 + #' [EXPERIMENTAL] Get run with the given identifier from the specified project-space + #' + #' @param project_id project-space to read from. + #' @param run_id identifier of run to access. + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: []) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (Run) with additional information such as HTTP status code, headers + GetRunExperimentalWithHttpInfo = function(project_id, run_id, opt_fields = list(), 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`.") + } + + if (missing(`run_id`)) { + stop("Missing required parameter `run_id`.") + } + + + + + # explore + for (query_item in `opt_fields`) { + query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) + } + + local_var_url_path <- "/api/projects/{projectId}/runs/{runId}" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`run_id`)) { + local_var_url_path <- gsub("\\{runId\\}", URLencode(as.character(`run_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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "Run", 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 + #' [EXPERIMENTAL] Get all available runs in the given project-space + #' + #' @param project_id project-space to read from. + #' @param page (optional) Zero-based page index (0..N) (default value: 0) + #' @param size (optional) The size of the page to be returned (default value: 20) + #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: []) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return PagedModelRun + GetRunPageExperimental = function(project_id, page = 0, size = 20, sort = NULL, opt_fields = list(), data_file = NULL, ...) { + local_var_response <- self$GetRunPageExperimentalWithHttpInfo(project_id, page, size, sort, opt_fields, 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 + #' [EXPERIMENTAL] Get all available runs in the given project-space + #' + #' @param project_id project-space to read from. + #' @param page (optional) Zero-based page index (0..N) (default value: 0) + #' @param size (optional) The size of the page to be returned (default value: 20) + #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: []) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (PagedModelRun) with additional information such as HTTP status code, headers + GetRunPageExperimentalWithHttpInfo = function(project_id, page = 0, size = 20, sort = NULL, opt_fields = list(), 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`.") + } + + + if (`page` < 0) { + stop("Invalid value for `page` when calling RunsApi$GetRunPageExperimental, must be bigger than or equal to 0.") + } + + if (`size` < 1) { + stop("Invalid value for `size` when calling RunsApi$GetRunPageExperimental, must be bigger than or equal to 1.") + } + + + + query_params[["page"]] <- `page` + + query_params[["size"]] <- `size` + + # explore + for (query_item in `sort`) { + query_params[["sort"]] <- c(query_params[["sort"]], list(`sort` = query_item)) + } + + # explore + for (query_item in `opt_fields`) { + query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) + } + + local_var_url_path <- "/api/projects/{projectId}/runs/page" + 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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "PagedModelRun", 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 + #' [EXPERIMENTAL] Get runs by tag group + #' + #' @param project_id project-space to delete from. + #' @param group_name tag group name. + #' @param page (optional) Zero-based page index (0..N) (default value: 0) + #' @param size (optional) The size of the page to be returned (default value: 20) + #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return PagedModelRun + GetRunsByGroupExperimental = function(project_id, group_name, page = 0, size = 20, sort = NULL, opt_fields = list("none"), data_file = NULL, ...) { + local_var_response <- self$GetRunsByGroupExperimentalWithHttpInfo(project_id, group_name, page, size, sort, opt_fields, 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 + #' [EXPERIMENTAL] Get runs by tag group + #' + #' @param project_id project-space to delete from. + #' @param group_name tag group name. + #' @param page (optional) Zero-based page index (0..N) (default value: 0) + #' @param size (optional) The size of the page to be returned (default value: 20) + #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: ["none"]) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (PagedModelRun) with additional information such as HTTP status code, headers + GetRunsByGroupExperimentalWithHttpInfo = function(project_id, group_name, page = 0, size = 20, sort = NULL, opt_fields = list("none"), 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`.") + } + + if (missing(`group_name`)) { + stop("Missing required parameter `group_name`.") + } + + + + if (`page` < 0) { + stop("Invalid value for `page` when calling RunsApi$GetRunsByGroupExperimental, must be bigger than or equal to 0.") + } + + if (`size` < 1) { + stop("Invalid value for `size` when calling RunsApi$GetRunsByGroupExperimental, must be bigger than or equal to 1.") + } + + + + query_params[["groupName"]] <- `group_name` + + query_params[["page"]] <- `page` + + query_params[["size"]] <- `size` + + # explore + for (query_item in `sort`) { + query_params[["sort"]] <- c(query_params[["sort"]], list(`sort` = query_item)) + } + + # explore + for (query_item in `opt_fields`) { + query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) + } + + local_var_url_path <- "/api/projects/{projectId}/runs/grouped" + 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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "PagedModelRun", 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 + #' [EXPERIMENTAL] Get runs by tag + #' + #' @param project_id project space to get runs from. + #' @param filter (optional) tag filter. (default value: "") + #' @param page (optional) Zero-based page index (0..N) (default value: 0) + #' @param size (optional) The size of the page to be returned (default value: 20) + #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: []) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return PagedModelRun + GetRunsByTagExperimental = function(project_id, filter = "", page = 0, size = 20, sort = NULL, opt_fields = list(), data_file = NULL, ...) { + local_var_response <- self$GetRunsByTagExperimentalWithHttpInfo(project_id, filter, page, size, sort, opt_fields, 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 + #' [EXPERIMENTAL] Get runs by tag + #' + #' @param project_id project space to get runs from. + #' @param filter (optional) tag filter. (default value: "") + #' @param page (optional) Zero-based page index (0..N) (default value: 0) + #' @param size (optional) The size of the page to be returned (default value: 20) + #' @param sort (optional) Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. + #' @param opt_fields (optional) set of optional fields to be included. Use 'none' only to override defaults. (default value: []) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (PagedModelRun) with additional information such as HTTP status code, headers + GetRunsByTagExperimentalWithHttpInfo = function(project_id, filter = "", page = 0, size = 20, sort = NULL, opt_fields = list(), 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`.") + } + + + + if (`page` < 0) { + stop("Invalid value for `page` when calling RunsApi$GetRunsByTagExperimental, must be bigger than or equal to 0.") + } + + if (`size` < 1) { + stop("Invalid value for `size` when calling RunsApi$GetRunsByTagExperimental, must be bigger than or equal to 1.") + } + + + + query_params[["filter"]] <- `filter` + + query_params[["page"]] <- `page` + + query_params[["size"]] <- `size` + + # explore + for (query_item in `sort`) { + query_params[["sort"]] <- c(query_params[["sort"]], list(`sort` = query_item)) + } + + # explore + for (query_item in `opt_fields`) { + query_params[["optFields"]] <- c(query_params[["optFields"]], list(`optFields` = query_item)) + } + + local_var_url_path <- "/api/projects/{projectId}/runs/tagged" + 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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "PagedModelRun", 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 + #' [EXPERIMENTAL] Get all tags associated with this Run + #' + #' @param project_id project-space to get from. + #' @param object_id RunId to get tags for. + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return array[Tag] + GetTagsForRunExperimental = function(project_id, object_id, data_file = NULL, ...) { + local_var_response <- self$GetTagsForRunExperimentalWithHttpInfo(project_id, object_id, 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 + #' [EXPERIMENTAL] Get all tags associated with this Run + #' + #' @param project_id project-space to get from. + #' @param object_id RunId to get tags for. + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (array[Tag]) with additional information such as HTTP status code, headers + GetTagsForRunExperimentalWithHttpInfo = function(project_id, object_id, 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`.") + } + + if (missing(`object_id`)) { + stop("Missing required parameter `object_id`.") + } + + + + local_var_url_path <- "/api/projects/{projectId}/runs/tags/{objectId}" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`object_id`)) { + local_var_url_path <- gsub("\\{objectId\\}", URLencode(as.character(`object_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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "array[Tag]", 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 + #' [EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space + #' + #' @param project_id project-space to delete from. + #' @param run_id run to delete tag from. + #' @param tag_name name of the tag to delete. + #' @param ... Other optional arguments + #' + #' @return void + RemoveTagFromRunExperimental = function(project_id, run_id, tag_name, ...) { + local_var_response <- self$RemoveTagFromRunExperimentalWithHttpInfo(project_id, run_id, tag_name, ...) + 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 + #' [EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space + #' + #' @param project_id project-space to delete from. + #' @param run_id run to delete tag from. + #' @param tag_name name of the tag to delete. + #' @param ... Other optional arguments + #' + #' @return API response (void) with additional information such as HTTP status code, headers + RemoveTagFromRunExperimentalWithHttpInfo = function(project_id, run_id, tag_name, ...) { + 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`.") + } + + if (missing(`run_id`)) { + stop("Missing required parameter `run_id`.") + } + + if (missing(`tag_name`)) { + stop("Missing required parameter `tag_name`.") + } + + + + + local_var_url_path <- "/api/projects/{projectId}/runs/tags/{runId}/{tagName}" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`run_id`)) { + local_var_url_path <- gsub("\\{runId\\}", URLencode(as.character(`run_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`tag_name`)) { + local_var_url_path <- gsub("\\{tagName\\}", URLencode(as.character(`tag_name`), 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 = "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) { + 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/sample_type_fold_change_request.R b/client-api_r/generated/R/sample_type_fold_change_request.R new file mode 100644 index 00000000..49878fb6 --- /dev/null +++ b/client-api_r/generated/R/sample_type_fold_change_request.R @@ -0,0 +1,190 @@ +#' Create a new SampleTypeFoldChangeRequest +#' +#' @description +#' SampleTypeFoldChangeRequest Class +#' +#' @docType class +#' @title SampleTypeFoldChangeRequest +#' @description SampleTypeFoldChangeRequest Class +#' @format An \code{R6Class} generator object +#' @field sampleRunIds list(character) [optional] +#' @field blankRunIds list(character) [optional] +#' @field controlRunIds list(character) [optional] +#' @importFrom R6 R6Class +#' @importFrom jsonlite fromJSON toJSON +#' @export +SampleTypeFoldChangeRequest <- R6::R6Class( + "SampleTypeFoldChangeRequest", + public = list( + `sampleRunIds` = NULL, + `blankRunIds` = NULL, + `controlRunIds` = NULL, + + #' @description + #' Initialize a new SampleTypeFoldChangeRequest class. + #' + #' @param sampleRunIds sampleRunIds + #' @param blankRunIds blankRunIds + #' @param controlRunIds controlRunIds + #' @param ... Other optional arguments. + initialize = function(`sampleRunIds` = NULL, `blankRunIds` = NULL, `controlRunIds` = NULL, ...) { + if (!is.null(`sampleRunIds`)) { + stopifnot(is.vector(`sampleRunIds`), length(`sampleRunIds`) != 0) + sapply(`sampleRunIds`, function(x) stopifnot(is.character(x))) + self$`sampleRunIds` <- `sampleRunIds` + } + if (!is.null(`blankRunIds`)) { + stopifnot(is.vector(`blankRunIds`), length(`blankRunIds`) != 0) + sapply(`blankRunIds`, function(x) stopifnot(is.character(x))) + self$`blankRunIds` <- `blankRunIds` + } + if (!is.null(`controlRunIds`)) { + stopifnot(is.vector(`controlRunIds`), length(`controlRunIds`) != 0) + sapply(`controlRunIds`, function(x) stopifnot(is.character(x))) + self$`controlRunIds` <- `controlRunIds` + } + }, + + #' @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 SampleTypeFoldChangeRequest as a base R list. + #' @examples + #' # convert array of SampleTypeFoldChangeRequest (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 SampleTypeFoldChangeRequest to a base R type + #' + #' @return A base R type, e.g. a list or numeric/character array. + toSimpleType = function() { + SampleTypeFoldChangeRequestObject <- list() + if (!is.null(self$`sampleRunIds`)) { + SampleTypeFoldChangeRequestObject[["sampleRunIds"]] <- + self$`sampleRunIds` + } + if (!is.null(self$`blankRunIds`)) { + SampleTypeFoldChangeRequestObject[["blankRunIds"]] <- + self$`blankRunIds` + } + if (!is.null(self$`controlRunIds`)) { + SampleTypeFoldChangeRequestObject[["controlRunIds"]] <- + self$`controlRunIds` + } + return(SampleTypeFoldChangeRequestObject) + }, + + #' @description + #' Deserialize JSON string into an instance of SampleTypeFoldChangeRequest + #' + #' @param input_json the JSON input + #' @return the instance of SampleTypeFoldChangeRequest + fromJSON = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`sampleRunIds`)) { + self$`sampleRunIds` <- ApiClient$new()$deserializeObj(this_object$`sampleRunIds`, "array[character]", loadNamespace("Rsirius")) + } + if (!is.null(this_object$`blankRunIds`)) { + self$`blankRunIds` <- ApiClient$new()$deserializeObj(this_object$`blankRunIds`, "array[character]", loadNamespace("Rsirius")) + } + if (!is.null(this_object$`controlRunIds`)) { + self$`controlRunIds` <- ApiClient$new()$deserializeObj(this_object$`controlRunIds`, "array[character]", loadNamespace("Rsirius")) + } + self + }, + + #' @description + #' To JSON String + #' + #' @param ... Parameters passed to `jsonlite::toJSON` + #' @return SampleTypeFoldChangeRequest 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 SampleTypeFoldChangeRequest + #' + #' @param input_json the JSON input + #' @return the instance of SampleTypeFoldChangeRequest + fromJSONString = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + self$`sampleRunIds` <- ApiClient$new()$deserializeObj(this_object$`sampleRunIds`, "array[character]", loadNamespace("Rsirius")) + self$`blankRunIds` <- ApiClient$new()$deserializeObj(this_object$`blankRunIds`, "array[character]", loadNamespace("Rsirius")) + self$`controlRunIds` <- ApiClient$new()$deserializeObj(this_object$`controlRunIds`, "array[character]", loadNamespace("Rsirius")) + self + }, + + #' @description + #' Validate JSON input with respect to SampleTypeFoldChangeRequest 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 SampleTypeFoldChangeRequest + 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 +# SampleTypeFoldChangeRequest$unlock() +# +## Below is an example to define the print function +# SampleTypeFoldChangeRequest$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 +# SampleTypeFoldChangeRequest$lock() + diff --git a/client-api_r/generated/R/searchable_databases_api.R b/client-api_r/generated/R/searchable_databases_api.R index 0c13f430..6b64f9a3 100644 --- a/client-api_r/generated/R/searchable_databases_api.R +++ b/client-api_r/generated/R/searchable_databases_api.R @@ -100,15 +100,16 @@ #' #' library(Rsirius) #' var_database_id <- "database_id_example" # character | database to import into +#' var_input_files <- c(123) # array[data.frame] | files to be imported #' var_buffer_size <- 1000 # integer | (Optional) -#' var_input_files <- c(123) # array[data.frame] | (Optional) +#' var_bio_transformer_parameters <- BioTransformerParameters$new("RULE_BASED", "BT_RULE_BASED", c(BioTransformerSequenceStep$new("PHASE_1_CYP450", 123)), "useDB_example") # BioTransformerParameters | configuration for biotransformer execution. If null, BioTransformer is not applied. (Optional) #' #' #Start import of structure and spectra files into the specified database. #' api_instance <- rsirius_api$new() #' #' # to save the result into a file, simply add the optional `data_file` parameter, e.g. -#' # result <- api_instance$ImportIntoDatabase(var_database_id, buffer_size = var_buffer_size, input_files = var_input_filesdata_file = "result.txt") -#' result <- api_instance$searchable_databases_api$ImportIntoDatabase(var_database_id, buffer_size = var_buffer_size, input_files = var_input_files) +#' # result <- api_instance$ImportIntoDatabase(var_database_id, var_input_files, buffer_size = var_buffer_size, bio_transformer_parameters = var_bio_transformer_parametersdata_file = "result.txt") +#' result <- api_instance$searchable_databases_api$ImportIntoDatabase(var_database_id, var_input_files, buffer_size = var_buffer_size, bio_transformer_parameters = var_bio_transformer_parameters) #' dput(result) #' #' @@ -746,14 +747,15 @@ SearchableDatabasesApi <- R6::R6Class( #' Start import of structure and spectra files into the specified database. #' #' @param database_id database to import into + #' @param input_files files to be imported #' @param buffer_size (optional) No description (default value: 1000) - #' @param input_files (optional) No description + #' @param bio_transformer_parameters (optional) configuration for biotransformer execution. If null, BioTransformer is not applied. #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return SearchableDatabase - ImportIntoDatabase = function(database_id, buffer_size = 1000, input_files = NULL, data_file = NULL, ...) { - local_var_response <- self$ImportIntoDatabaseWithHttpInfo(database_id, buffer_size, input_files, data_file = data_file, ...) + ImportIntoDatabase = function(database_id, input_files, buffer_size = 1000, bio_transformer_parameters = NULL, data_file = NULL, ...) { + local_var_response <- self$ImportIntoDatabaseWithHttpInfo(database_id, input_files, buffer_size, bio_transformer_parameters, 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) { @@ -769,13 +771,14 @@ SearchableDatabasesApi <- R6::R6Class( #' Start import of structure and spectra files into the specified database. #' #' @param database_id database to import into + #' @param input_files files to be imported #' @param buffer_size (optional) No description (default value: 1000) - #' @param input_files (optional) No description + #' @param bio_transformer_parameters (optional) configuration for biotransformer execution. If null, BioTransformer is not applied. #' @param data_file (optional) name of the data file to save the result #' @param ... Other optional arguments #' #' @return API response (SearchableDatabase) with additional information such as HTTP status code, headers - ImportIntoDatabaseWithHttpInfo = function(database_id, buffer_size = 1000, input_files = NULL, data_file = NULL, ...) { + ImportIntoDatabaseWithHttpInfo = function(database_id, input_files, buffer_size = 1000, bio_transformer_parameters = NULL, data_file = NULL, ...) { args <- list(...) query_params <- list() header_params <- c() @@ -789,12 +792,18 @@ SearchableDatabasesApi <- R6::R6Class( stop("Missing required parameter `database_id`.") } + if (missing(`input_files`)) { + stop("Missing required parameter `input_files`.") + } + + query_params[["bufferSize"]] <- `buffer_size` file_params[["inputFiles"]] <- curl::form_file(`input_files`) + form_params["bioTransformerParameters"] <- `bio_transformer_parameters` local_var_url_path <- "/api/databases/{databaseId}/import/from-files" if (!missing(`database_id`)) { local_var_url_path <- gsub("\\{databaseId\\}", URLencode(as.character(`database_id`), reserved = TRUE), local_var_url_path) diff --git a/client-api_r/generated/R/security_context.R b/client-api_r/generated/R/security_context.R new file mode 100644 index 00000000..e752962b --- /dev/null +++ b/client-api_r/generated/R/security_context.R @@ -0,0 +1,159 @@ +#' Create a new SecurityContext +#' +#' @description +#' SecurityContext Class +#' +#' @docType class +#' @title SecurityContext +#' @description SecurityContext Class +#' @format An \code{R6Class} generator object +#' @field principal \link{SecurityContextPrincipal} [optional] +#' @importFrom R6 R6Class +#' @importFrom jsonlite fromJSON toJSON +#' @export +SecurityContext <- R6::R6Class( + "SecurityContext", + public = list( + `principal` = NULL, + + #' @description + #' Initialize a new SecurityContext class. + #' + #' @param principal principal + #' @param ... Other optional arguments. + initialize = function(`principal` = NULL, ...) { + if (!is.null(`principal`)) { + stopifnot(R6::is.R6(`principal`)) + self$`principal` <- `principal` + } + }, + + #' @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 SecurityContext as a base R list. + #' @examples + #' # convert array of SecurityContext (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 SecurityContext to a base R type + #' + #' @return A base R type, e.g. a list or numeric/character array. + toSimpleType = function() { + SecurityContextObject <- list() + if (!is.null(self$`principal`)) { + SecurityContextObject[["principal"]] <- + self$`principal`$toSimpleType() + } + return(SecurityContextObject) + }, + + #' @description + #' Deserialize JSON string into an instance of SecurityContext + #' + #' @param input_json the JSON input + #' @return the instance of SecurityContext + fromJSON = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`principal`)) { + `principal_object` <- SecurityContextPrincipal$new() + `principal_object`$fromJSON(jsonlite::toJSON(this_object$`principal`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`principal` <- `principal_object` + } + self + }, + + #' @description + #' To JSON String + #' + #' @param ... Parameters passed to `jsonlite::toJSON` + #' @return SecurityContext 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 SecurityContext + #' + #' @param input_json the JSON input + #' @return the instance of SecurityContext + fromJSONString = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + self$`principal` <- SecurityContextPrincipal$new()$fromJSON(jsonlite::toJSON(this_object$`principal`, auto_unbox = TRUE, digits = NA, null = 'null')) + self + }, + + #' @description + #' Validate JSON input with respect to SecurityContext 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 SecurityContext + 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 +# SecurityContext$unlock() +# +## Below is an example to define the print function +# SecurityContext$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 +# SecurityContext$lock() + diff --git a/client-api_r/generated/R/security_context_principal.R b/client-api_r/generated/R/security_context_principal.R new file mode 100644 index 00000000..ef43d8b3 --- /dev/null +++ b/client-api_r/generated/R/security_context_principal.R @@ -0,0 +1,159 @@ +#' Create a new SecurityContextPrincipal +#' +#' @description +#' SecurityContextPrincipal Class +#' +#' @docType class +#' @title SecurityContextPrincipal +#' @description SecurityContextPrincipal Class +#' @format An \code{R6Class} generator object +#' @field name character [optional] +#' @importFrom R6 R6Class +#' @importFrom jsonlite fromJSON toJSON +#' @export +SecurityContextPrincipal <- R6::R6Class( + "SecurityContextPrincipal", + public = list( + `name` = NULL, + + #' @description + #' Initialize a new SecurityContextPrincipal class. + #' + #' @param name name + #' @param ... Other optional arguments. + initialize = function(`name` = NULL, ...) { + if (!is.null(`name`)) { + if (!(is.character(`name`) && length(`name`) == 1)) { + stop(paste("Error! Invalid data for `name`. Must be a string:", `name`)) + } + self$`name` <- `name` + } + }, + + #' @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 SecurityContextPrincipal as a base R list. + #' @examples + #' # convert array of SecurityContextPrincipal (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 SecurityContextPrincipal to a base R type + #' + #' @return A base R type, e.g. a list or numeric/character array. + toSimpleType = function() { + SecurityContextPrincipalObject <- list() + if (!is.null(self$`name`)) { + SecurityContextPrincipalObject[["name"]] <- + self$`name` + } + return(SecurityContextPrincipalObject) + }, + + #' @description + #' Deserialize JSON string into an instance of SecurityContextPrincipal + #' + #' @param input_json the JSON input + #' @return the instance of SecurityContextPrincipal + fromJSON = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`name`)) { + self$`name` <- this_object$`name` + } + self + }, + + #' @description + #' To JSON String + #' + #' @param ... Parameters passed to `jsonlite::toJSON` + #' @return SecurityContextPrincipal 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 SecurityContextPrincipal + #' + #' @param input_json the JSON input + #' @return the instance of SecurityContextPrincipal + fromJSONString = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + self$`name` <- this_object$`name` + self + }, + + #' @description + #' Validate JSON input with respect to SecurityContextPrincipal 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 SecurityContextPrincipal + 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 +# SecurityContextPrincipal$unlock() +# +## Below is an example to define the print function +# SecurityContextPrincipal$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 +# SecurityContextPrincipal$lock() + diff --git a/client-api_r/generated/R/sirius.R b/client-api_r/generated/R/sirius.R index 5f3fb9ed..a28a67b4 100644 --- a/client-api_r/generated/R/sirius.R +++ b/client-api_r/generated/R/sirius.R @@ -22,8 +22,8 @@ #' @field enforcedFormulaConstraints These configurations hold the information how to autodetect elements based on the given formula constraints. Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.
Enforced: Enforced elements are always considered character [optional] #' @field fallbackFormulaConstraints These configurations hold the information how to autodetect elements based on the given formula constraints. Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.
Fallback: Fallback elements are used, if the auto-detection fails (e.g. no isotope pattern available) character [optional] #' @field detectableElements These configurations hold the information how to autodetect elements based on the given formula constraints. Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.
Detectable: Detectable elements are added to the chemical alphabet, if there are indications for them (e.g. in isotope pattern) list(character) [optional] -#' @field ilpTimeout \link{Timeout} [optional] -#' @field useHeuristic \link{UseHeuristic} [optional] +#' @field ilpTimeout Timout settings for the ILP solver used for fragmentation tree computation secondsPerInstance: Set the maximum number of seconds for computing a single compound. Set to 0 to disable the time constraint. secondsPerTree: Set the maximum number of seconds for a single molecular formula check. Set to 0 to disable the time constraint \link{Timeout} [optional] +#' @field useHeuristic Mass thresholds for heuristic fragmentation tree computation which dramatically speeds up computations. useHeuristicAboveMz: For compounds above this threshold fragmentation trees will be computed heuristically for ranking. Tree that will be kept (numberOfCandidates) will be recomputed exactly useOnlyHeuristicAboveMz:For compounds above this threshold fragmentation trees will be computed heuristically. \link{UseHeuristic} [optional] #' @field injectSpecLibMatchFormulas If true formula candidates that belong to spectral library matches above a certain threshold will we inject/preserved for further analyses no matter which score they have or which filter is applied character [optional] #' @field minScoreToInjectSpecLibMatch Similarity Threshold to inject formula candidates no matter which score/rank they have or which filter settings are applied. If threshold >= 0 formulas candidates with reference spectrum similarity above the threshold will be injected. numeric [optional] #' @field minPeaksToInjectSpecLibMatch Matching peaks threshold to inject formula candidates no matter which score they have or which filter is applied. integer [optional] @@ -72,8 +72,8 @@ Sirius <- R6::R6Class( #' @param enforcedFormulaConstraints These configurations hold the information how to autodetect elements based on the given formula constraints. Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.
Enforced: Enforced elements are always considered #' @param fallbackFormulaConstraints These configurations hold the information how to autodetect elements based on the given formula constraints. Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.
Fallback: Fallback elements are used, if the auto-detection fails (e.g. no isotope pattern available) #' @param detectableElements These configurations hold the information how to autodetect elements based on the given formula constraints. Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.
Detectable: Detectable elements are added to the chemical alphabet, if there are indications for them (e.g. in isotope pattern) - #' @param ilpTimeout ilpTimeout - #' @param useHeuristic useHeuristic + #' @param ilpTimeout Timout settings for the ILP solver used for fragmentation tree computation secondsPerInstance: Set the maximum number of seconds for computing a single compound. Set to 0 to disable the time constraint. secondsPerTree: Set the maximum number of seconds for a single molecular formula check. Set to 0 to disable the time constraint + #' @param useHeuristic Mass thresholds for heuristic fragmentation tree computation which dramatically speeds up computations. useHeuristicAboveMz: For compounds above this threshold fragmentation trees will be computed heuristically for ranking. Tree that will be kept (numberOfCandidates) will be recomputed exactly useOnlyHeuristicAboveMz:For compounds above this threshold fragmentation trees will be computed heuristically. #' @param injectSpecLibMatchFormulas If true formula candidates that belong to spectral library matches above a certain threshold will we inject/preserved for further analyses no matter which score they have or which filter is applied #' @param minScoreToInjectSpecLibMatch Similarity Threshold to inject formula candidates no matter which score/rank they have or which filter settings are applied. If threshold >= 0 formulas candidates with reference spectrum similarity above the threshold will be injected. #' @param minPeaksToInjectSpecLibMatch Matching peaks threshold to inject formula candidates no matter which score they have or which filter is applied. diff --git a/client-api_r/generated/R/spectral_library_match.R b/client-api_r/generated/R/spectral_library_match.R index 381811ef..2797eb9b 100644 --- a/client-api_r/generated/R/spectral_library_match.R +++ b/client-api_r/generated/R/spectral_library_match.R @@ -9,8 +9,9 @@ #' @format An \code{R6Class} generator object #' @field specMatchId character [optional] #' @field rank integer [optional] -#' @field similarity numeric -#' @field sharedPeaks integer [optional] +#' @field similarity Similarity between query and reference spectrum numeric +#' @field sharedPeaks Number of shared/matched peaks integer [optional] +#' @field sharedPeakMapping List of paired/matched peak indices. Maps indices of peaks from the query spectrum (mass sorted) to indices of matched peaks in the reference spectrum (mass sorted) list(\link{PeakPair}) [optional] #' @field querySpectrumIndex integer #' @field dbName character [optional] #' @field dbId character [optional] @@ -18,10 +19,13 @@ #' @field splash character [optional] #' @field molecularFormula character [optional] #' @field adduct character [optional] -#' @field exactMass character [optional] +#' @field exactMass numeric [optional] #' @field smiles character [optional] +#' @field type character [optional] #' @field inchiKey character +#' @field referenceSpectrumType character [optional] #' @field referenceSpectrum \link{BasicSpectrum} [optional] +#' @field querySpectrumType character [optional] #' @importFrom R6 R6Class #' @importFrom jsonlite fromJSON toJSON #' @export @@ -32,6 +36,7 @@ SpectralLibraryMatch <- R6::R6Class( `rank` = NULL, `similarity` = NULL, `sharedPeaks` = NULL, + `sharedPeakMapping` = NULL, `querySpectrumIndex` = NULL, `dbName` = NULL, `dbId` = NULL, @@ -41,19 +46,23 @@ SpectralLibraryMatch <- R6::R6Class( `adduct` = NULL, `exactMass` = NULL, `smiles` = NULL, + `type` = NULL, `inchiKey` = NULL, + `referenceSpectrumType` = NULL, `referenceSpectrum` = NULL, + `querySpectrumType` = NULL, #' @description #' Initialize a new SpectralLibraryMatch class. #' - #' @param similarity similarity + #' @param similarity Similarity between query and reference spectrum #' @param querySpectrumIndex querySpectrumIndex #' @param uuid uuid #' @param inchiKey inchiKey #' @param specMatchId specMatchId #' @param rank rank - #' @param sharedPeaks sharedPeaks + #' @param sharedPeaks Number of shared/matched peaks + #' @param sharedPeakMapping List of paired/matched peak indices. Maps indices of peaks from the query spectrum (mass sorted) to indices of matched peaks in the reference spectrum (mass sorted) #' @param dbName dbName #' @param dbId dbId #' @param splash splash @@ -61,9 +70,12 @@ SpectralLibraryMatch <- R6::R6Class( #' @param adduct adduct #' @param exactMass exactMass #' @param smiles smiles + #' @param type type. Default to "IDENTITY". + #' @param referenceSpectrumType referenceSpectrumType. Default to "SPECTRUM". #' @param referenceSpectrum referenceSpectrum + #' @param querySpectrumType querySpectrumType #' @param ... Other optional arguments. - initialize = function(`similarity`, `querySpectrumIndex`, `uuid`, `inchiKey`, `specMatchId` = NULL, `rank` = NULL, `sharedPeaks` = NULL, `dbName` = NULL, `dbId` = NULL, `splash` = NULL, `molecularFormula` = NULL, `adduct` = NULL, `exactMass` = NULL, `smiles` = NULL, `referenceSpectrum` = NULL, ...) { + initialize = function(`similarity`, `querySpectrumIndex`, `uuid`, `inchiKey`, `specMatchId` = NULL, `rank` = NULL, `sharedPeaks` = NULL, `sharedPeakMapping` = NULL, `dbName` = NULL, `dbId` = NULL, `splash` = NULL, `molecularFormula` = NULL, `adduct` = NULL, `exactMass` = NULL, `smiles` = NULL, `type` = "IDENTITY", `referenceSpectrumType` = "SPECTRUM", `referenceSpectrum` = NULL, `querySpectrumType` = NULL, ...) { if (!missing(`similarity`)) { if (!(is.numeric(`similarity`) && length(`similarity`) == 1)) { stop(paste("Error! Invalid data for `similarity`. Must be a number:", `similarity`)) @@ -106,6 +118,11 @@ SpectralLibraryMatch <- R6::R6Class( } self$`sharedPeaks` <- `sharedPeaks` } + if (!is.null(`sharedPeakMapping`)) { + stopifnot(is.vector(`sharedPeakMapping`), length(`sharedPeakMapping`) != 0) + sapply(`sharedPeakMapping`, function(x) stopifnot(R6::is.R6(x))) + self$`sharedPeakMapping` <- `sharedPeakMapping` + } if (!is.null(`dbName`)) { if (!(is.character(`dbName`) && length(`dbName`) == 1)) { stop(paste("Error! Invalid data for `dbName`. Must be a string:", `dbName`)) @@ -137,8 +154,8 @@ SpectralLibraryMatch <- R6::R6Class( self$`adduct` <- `adduct` } if (!is.null(`exactMass`)) { - if (!(is.character(`exactMass`) && length(`exactMass`) == 1)) { - stop(paste("Error! Invalid data for `exactMass`. Must be a string:", `exactMass`)) + if (!(is.numeric(`exactMass`) && length(`exactMass`) == 1)) { + stop(paste("Error! Invalid data for `exactMass`. Must be a number:", `exactMass`)) } self$`exactMass` <- `exactMass` } @@ -148,10 +165,37 @@ SpectralLibraryMatch <- R6::R6Class( } self$`smiles` <- `smiles` } + if (!is.null(`type`)) { + if (!(`type` %in% c("IDENTITY", "ANALOG"))) { + stop(paste("Error! \"", `type`, "\" cannot be assigned to `type`. Must be \"IDENTITY\", \"ANALOG\".", sep = "")) + } + if (!(is.character(`type`) && length(`type`) == 1)) { + stop(paste("Error! Invalid data for `type`. Must be a string:", `type`)) + } + self$`type` <- `type` + } + if (!is.null(`referenceSpectrumType`)) { + if (!(`referenceSpectrumType` %in% c("SPECTRUM", "MERGED_SPECTRUM"))) { + stop(paste("Error! \"", `referenceSpectrumType`, "\" cannot be assigned to `referenceSpectrumType`. Must be \"SPECTRUM\", \"MERGED_SPECTRUM\".", sep = "")) + } + if (!(is.character(`referenceSpectrumType`) && length(`referenceSpectrumType`) == 1)) { + stop(paste("Error! Invalid data for `referenceSpectrumType`. Must be a string:", `referenceSpectrumType`)) + } + self$`referenceSpectrumType` <- `referenceSpectrumType` + } if (!is.null(`referenceSpectrum`)) { stopifnot(R6::is.R6(`referenceSpectrum`)) self$`referenceSpectrum` <- `referenceSpectrum` } + if (!is.null(`querySpectrumType`)) { + if (!(`querySpectrumType` %in% c("SPECTRUM", "MERGED_SPECTRUM"))) { + stop(paste("Error! \"", `querySpectrumType`, "\" cannot be assigned to `querySpectrumType`. Must be \"SPECTRUM\", \"MERGED_SPECTRUM\".", sep = "")) + } + if (!(is.character(`querySpectrumType`) && length(`querySpectrumType`) == 1)) { + stop(paste("Error! Invalid data for `querySpectrumType`. Must be a string:", `querySpectrumType`)) + } + self$`querySpectrumType` <- `querySpectrumType` + } }, #' @description @@ -201,6 +245,10 @@ SpectralLibraryMatch <- R6::R6Class( SpectralLibraryMatchObject[["sharedPeaks"]] <- self$`sharedPeaks` } + if (!is.null(self$`sharedPeakMapping`)) { + SpectralLibraryMatchObject[["sharedPeakMapping"]] <- + lapply(self$`sharedPeakMapping`, function(x) x$toSimpleType()) + } if (!is.null(self$`querySpectrumIndex`)) { SpectralLibraryMatchObject[["querySpectrumIndex"]] <- self$`querySpectrumIndex` @@ -237,14 +285,26 @@ SpectralLibraryMatch <- R6::R6Class( SpectralLibraryMatchObject[["smiles"]] <- self$`smiles` } + if (!is.null(self$`type`)) { + SpectralLibraryMatchObject[["type"]] <- + self$`type` + } if (!is.null(self$`inchiKey`)) { SpectralLibraryMatchObject[["inchiKey"]] <- self$`inchiKey` } + if (!is.null(self$`referenceSpectrumType`)) { + SpectralLibraryMatchObject[["referenceSpectrumType"]] <- + self$`referenceSpectrumType` + } if (!is.null(self$`referenceSpectrum`)) { SpectralLibraryMatchObject[["referenceSpectrum"]] <- self$`referenceSpectrum`$toSimpleType() } + if (!is.null(self$`querySpectrumType`)) { + SpectralLibraryMatchObject[["querySpectrumType"]] <- + self$`querySpectrumType` + } return(SpectralLibraryMatchObject) }, @@ -267,6 +327,9 @@ SpectralLibraryMatch <- R6::R6Class( if (!is.null(this_object$`sharedPeaks`)) { self$`sharedPeaks` <- this_object$`sharedPeaks` } + if (!is.null(this_object$`sharedPeakMapping`)) { + self$`sharedPeakMapping` <- ApiClient$new()$deserializeObj(this_object$`sharedPeakMapping`, "array[PeakPair]", loadNamespace("Rsirius")) + } if (!is.null(this_object$`querySpectrumIndex`)) { self$`querySpectrumIndex` <- this_object$`querySpectrumIndex` } @@ -294,14 +357,32 @@ SpectralLibraryMatch <- R6::R6Class( if (!is.null(this_object$`smiles`)) { self$`smiles` <- this_object$`smiles` } + if (!is.null(this_object$`type`)) { + if (!is.null(this_object$`type`) && !(this_object$`type` %in% c("IDENTITY", "ANALOG"))) { + stop(paste("Error! \"", this_object$`type`, "\" cannot be assigned to `type`. Must be \"IDENTITY\", \"ANALOG\".", sep = "")) + } + self$`type` <- this_object$`type` + } if (!is.null(this_object$`inchiKey`)) { self$`inchiKey` <- this_object$`inchiKey` } + if (!is.null(this_object$`referenceSpectrumType`)) { + if (!is.null(this_object$`referenceSpectrumType`) && !(this_object$`referenceSpectrumType` %in% c("SPECTRUM", "MERGED_SPECTRUM"))) { + stop(paste("Error! \"", this_object$`referenceSpectrumType`, "\" cannot be assigned to `referenceSpectrumType`. Must be \"SPECTRUM\", \"MERGED_SPECTRUM\".", sep = "")) + } + self$`referenceSpectrumType` <- this_object$`referenceSpectrumType` + } if (!is.null(this_object$`referenceSpectrum`)) { `referencespectrum_object` <- BasicSpectrum$new() `referencespectrum_object`$fromJSON(jsonlite::toJSON(this_object$`referenceSpectrum`, auto_unbox = TRUE, digits = NA, null = 'null')) self$`referenceSpectrum` <- `referencespectrum_object` } + if (!is.null(this_object$`querySpectrumType`)) { + if (!is.null(this_object$`querySpectrumType`) && !(this_object$`querySpectrumType` %in% c("SPECTRUM", "MERGED_SPECTRUM"))) { + stop(paste("Error! \"", this_object$`querySpectrumType`, "\" cannot be assigned to `querySpectrumType`. Must be \"SPECTRUM\", \"MERGED_SPECTRUM\".", sep = "")) + } + self$`querySpectrumType` <- this_object$`querySpectrumType` + } self }, @@ -327,6 +408,7 @@ SpectralLibraryMatch <- R6::R6Class( self$`rank` <- this_object$`rank` self$`similarity` <- this_object$`similarity` self$`sharedPeaks` <- this_object$`sharedPeaks` + self$`sharedPeakMapping` <- ApiClient$new()$deserializeObj(this_object$`sharedPeakMapping`, "array[PeakPair]", loadNamespace("Rsirius")) self$`querySpectrumIndex` <- this_object$`querySpectrumIndex` self$`dbName` <- this_object$`dbName` self$`dbId` <- this_object$`dbId` @@ -336,8 +418,20 @@ SpectralLibraryMatch <- R6::R6Class( self$`adduct` <- this_object$`adduct` self$`exactMass` <- this_object$`exactMass` self$`smiles` <- this_object$`smiles` + if (!is.null(this_object$`type`) && !(this_object$`type` %in% c("IDENTITY", "ANALOG"))) { + stop(paste("Error! \"", this_object$`type`, "\" cannot be assigned to `type`. Must be \"IDENTITY\", \"ANALOG\".", sep = "")) + } + self$`type` <- this_object$`type` self$`inchiKey` <- this_object$`inchiKey` + if (!is.null(this_object$`referenceSpectrumType`) && !(this_object$`referenceSpectrumType` %in% c("SPECTRUM", "MERGED_SPECTRUM"))) { + stop(paste("Error! \"", this_object$`referenceSpectrumType`, "\" cannot be assigned to `referenceSpectrumType`. Must be \"SPECTRUM\", \"MERGED_SPECTRUM\".", sep = "")) + } + self$`referenceSpectrumType` <- this_object$`referenceSpectrumType` self$`referenceSpectrum` <- BasicSpectrum$new()$fromJSON(jsonlite::toJSON(this_object$`referenceSpectrum`, auto_unbox = TRUE, digits = NA, null = 'null')) + if (!is.null(this_object$`querySpectrumType`) && !(this_object$`querySpectrumType` %in% c("SPECTRUM", "MERGED_SPECTRUM"))) { + stop(paste("Error! \"", this_object$`querySpectrumType`, "\" cannot be assigned to `querySpectrumType`. Must be \"SPECTRUM\", \"MERGED_SPECTRUM\".", sep = "")) + } + self$`querySpectrumType` <- this_object$`querySpectrumType` self }, diff --git a/client-api_r/generated/R/spectral_library_search.R b/client-api_r/generated/R/spectral_library_search.R index 7da93b5d..a37a159e 100644 --- a/client-api_r/generated/R/spectral_library_search.R +++ b/client-api_r/generated/R/spectral_library_search.R @@ -9,9 +9,14 @@ #' @format An \code{R6Class} generator object #' @field enabled tags whether the tool is enabled character [optional] #' @field spectraSearchDBs Structure Databases with Reference spectra to search in.
Defaults to BIO + Custom Databases. Possible values are available to Database API. list(character) [optional] -#' @field peakDeviationPpm Maximum allowed mass deviation in ppm for matching peaks. numeric [optional] #' @field precursorDeviationPpm Maximum allowed mass deviation in ppm for matching the precursor. If not specified, the same value as for the peaks is used. numeric [optional] -#' @field scoring Specify scoring method to match spectra INTENSITY: Intensity weighted. Each peak matches at most one peak in the other spectrum. GAUSSIAN: Treat peaks as (un-normalized) Gaussians and score overlapping areas of PDFs. Each peak might score against multiple peaks in the other spectrum. 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. character [optional] +#' @field minSimilarity Minimal spectral similarity of a spectral match to be considered a hit. numeric [optional] +#' @field minNumOfPeaks Minimal number of matching peaks of a spectral match to be considered a hit. integer [optional] +#' @field enableAnalogueSearch Enable analogue search in addition to the identity spectral library search character [optional] +#' @field minSimilarityAnalogue Minimal spectral similarity of a spectral match to be considered an analogue hit. numeric [optional] +#' @field minNumOfPeaksAnalogue Minimal number of matching peaks of a spectral match to be considered an analogue hit. integer [optional] +#' @field scoring NO LONGER SUPPORTED (IGNORED) Specify scoring method to match spectra INTENSITY: Intensity weighted. Each peak matches at most one peak in the other spectrum. GAUSSIAN: Treat peaks as (un-normalized) Gaussians and score overlapping areas of PDFs. Each peak might score against multiple peaks in the other spectrum. 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. character [optional] +#' @field peakDeviationPpm NO LONGER SUPPORTED (IGNORED) Maximum allowed mass deviation in ppm for matching peaks. numeric [optional] #' @importFrom R6 R6Class #' @importFrom jsonlite fromJSON toJSON #' @export @@ -20,20 +25,30 @@ SpectralLibrarySearch <- R6::R6Class( public = list( `enabled` = NULL, `spectraSearchDBs` = NULL, - `peakDeviationPpm` = NULL, `precursorDeviationPpm` = NULL, + `minSimilarity` = NULL, + `minNumOfPeaks` = NULL, + `enableAnalogueSearch` = NULL, + `minSimilarityAnalogue` = NULL, + `minNumOfPeaksAnalogue` = NULL, `scoring` = NULL, + `peakDeviationPpm` = NULL, #' @description #' Initialize a new SpectralLibrarySearch class. #' #' @param enabled tags whether the tool is enabled #' @param spectraSearchDBs Structure Databases with Reference spectra to search in.
Defaults to BIO + Custom Databases. Possible values are available to Database API. - #' @param peakDeviationPpm Maximum allowed mass deviation in ppm for matching peaks. #' @param precursorDeviationPpm Maximum allowed mass deviation in ppm for matching the precursor. If not specified, the same value as for the peaks is used. - #' @param scoring Specify scoring method to match spectra INTENSITY: Intensity weighted. Each peak matches at most one peak in the other spectrum. GAUSSIAN: Treat peaks as (un-normalized) Gaussians and score overlapping areas of PDFs. Each peak might score against multiple peaks in the other spectrum. 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. + #' @param minSimilarity Minimal spectral similarity of a spectral match to be considered a hit. + #' @param minNumOfPeaks Minimal number of matching peaks of a spectral match to be considered a hit. + #' @param enableAnalogueSearch Enable analogue search in addition to the identity spectral library search + #' @param minSimilarityAnalogue Minimal spectral similarity of a spectral match to be considered an analogue hit. + #' @param minNumOfPeaksAnalogue Minimal number of matching peaks of a spectral match to be considered an analogue hit. + #' @param scoring NO LONGER SUPPORTED (IGNORED) Specify scoring method to match spectra INTENSITY: Intensity weighted. Each peak matches at most one peak in the other spectrum. GAUSSIAN: Treat peaks as (un-normalized) Gaussians and score overlapping areas of PDFs. Each peak might score against multiple peaks in the other spectrum. 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. + #' @param peakDeviationPpm NO LONGER SUPPORTED (IGNORED) Maximum allowed mass deviation in ppm for matching peaks. #' @param ... Other optional arguments. - initialize = function(`enabled` = NULL, `spectraSearchDBs` = NULL, `peakDeviationPpm` = NULL, `precursorDeviationPpm` = NULL, `scoring` = NULL, ...) { + initialize = function(`enabled` = NULL, `spectraSearchDBs` = NULL, `precursorDeviationPpm` = NULL, `minSimilarity` = NULL, `minNumOfPeaks` = NULL, `enableAnalogueSearch` = NULL, `minSimilarityAnalogue` = NULL, `minNumOfPeaksAnalogue` = NULL, `scoring` = NULL, `peakDeviationPpm` = NULL, ...) { if (!is.null(`enabled`)) { if (!(is.logical(`enabled`) && length(`enabled`) == 1)) { stop(paste("Error! Invalid data for `enabled`. Must be a boolean:", `enabled`)) @@ -45,27 +60,57 @@ SpectralLibrarySearch <- R6::R6Class( sapply(`spectraSearchDBs`, function(x) stopifnot(is.character(x))) self$`spectraSearchDBs` <- `spectraSearchDBs` } - if (!is.null(`peakDeviationPpm`)) { - if (!(is.numeric(`peakDeviationPpm`) && length(`peakDeviationPpm`) == 1)) { - stop(paste("Error! Invalid data for `peakDeviationPpm`. Must be a number:", `peakDeviationPpm`)) - } - self$`peakDeviationPpm` <- `peakDeviationPpm` - } if (!is.null(`precursorDeviationPpm`)) { if (!(is.numeric(`precursorDeviationPpm`) && length(`precursorDeviationPpm`) == 1)) { stop(paste("Error! Invalid data for `precursorDeviationPpm`. Must be a number:", `precursorDeviationPpm`)) } self$`precursorDeviationPpm` <- `precursorDeviationPpm` } + if (!is.null(`minSimilarity`)) { + if (!(is.numeric(`minSimilarity`) && length(`minSimilarity`) == 1)) { + stop(paste("Error! Invalid data for `minSimilarity`. Must be a number:", `minSimilarity`)) + } + self$`minSimilarity` <- `minSimilarity` + } + if (!is.null(`minNumOfPeaks`)) { + if (!(is.numeric(`minNumOfPeaks`) && length(`minNumOfPeaks`) == 1)) { + stop(paste("Error! Invalid data for `minNumOfPeaks`. Must be an integer:", `minNumOfPeaks`)) + } + self$`minNumOfPeaks` <- `minNumOfPeaks` + } + if (!is.null(`enableAnalogueSearch`)) { + if (!(is.logical(`enableAnalogueSearch`) && length(`enableAnalogueSearch`) == 1)) { + stop(paste("Error! Invalid data for `enableAnalogueSearch`. Must be a boolean:", `enableAnalogueSearch`)) + } + self$`enableAnalogueSearch` <- `enableAnalogueSearch` + } + if (!is.null(`minSimilarityAnalogue`)) { + if (!(is.numeric(`minSimilarityAnalogue`) && length(`minSimilarityAnalogue`) == 1)) { + stop(paste("Error! Invalid data for `minSimilarityAnalogue`. Must be a number:", `minSimilarityAnalogue`)) + } + self$`minSimilarityAnalogue` <- `minSimilarityAnalogue` + } + if (!is.null(`minNumOfPeaksAnalogue`)) { + if (!(is.numeric(`minNumOfPeaksAnalogue`) && length(`minNumOfPeaksAnalogue`) == 1)) { + stop(paste("Error! Invalid data for `minNumOfPeaksAnalogue`. Must be an integer:", `minNumOfPeaksAnalogue`)) + } + self$`minNumOfPeaksAnalogue` <- `minNumOfPeaksAnalogue` + } if (!is.null(`scoring`)) { - if (!(`scoring` %in% c("INTENSITY", "GAUSSIAN", "MODIFIED_COSINE"))) { - stop(paste("Error! \"", `scoring`, "\" cannot be assigned to `scoring`. Must be \"INTENSITY\", \"GAUSSIAN\", \"MODIFIED_COSINE\".", sep = "")) + if (!(`scoring` %in% c("INTENSITY", "GAUSSIAN", "MODIFIED_COSINE", "FAST_COSINE"))) { + stop(paste("Error! \"", `scoring`, "\" cannot be assigned to `scoring`. Must be \"INTENSITY\", \"GAUSSIAN\", \"MODIFIED_COSINE\", \"FAST_COSINE\".", sep = "")) } if (!(is.character(`scoring`) && length(`scoring`) == 1)) { stop(paste("Error! Invalid data for `scoring`. Must be a string:", `scoring`)) } self$`scoring` <- `scoring` } + if (!is.null(`peakDeviationPpm`)) { + if (!(is.numeric(`peakDeviationPpm`) && length(`peakDeviationPpm`) == 1)) { + stop(paste("Error! Invalid data for `peakDeviationPpm`. Must be a number:", `peakDeviationPpm`)) + } + self$`peakDeviationPpm` <- `peakDeviationPpm` + } }, #' @description @@ -107,18 +152,38 @@ SpectralLibrarySearch <- R6::R6Class( SpectralLibrarySearchObject[["spectraSearchDBs"]] <- self$`spectraSearchDBs` } - if (!is.null(self$`peakDeviationPpm`)) { - SpectralLibrarySearchObject[["peakDeviationPpm"]] <- - self$`peakDeviationPpm` - } if (!is.null(self$`precursorDeviationPpm`)) { SpectralLibrarySearchObject[["precursorDeviationPpm"]] <- self$`precursorDeviationPpm` } + if (!is.null(self$`minSimilarity`)) { + SpectralLibrarySearchObject[["minSimilarity"]] <- + self$`minSimilarity` + } + if (!is.null(self$`minNumOfPeaks`)) { + SpectralLibrarySearchObject[["minNumOfPeaks"]] <- + self$`minNumOfPeaks` + } + if (!is.null(self$`enableAnalogueSearch`)) { + SpectralLibrarySearchObject[["enableAnalogueSearch"]] <- + self$`enableAnalogueSearch` + } + if (!is.null(self$`minSimilarityAnalogue`)) { + SpectralLibrarySearchObject[["minSimilarityAnalogue"]] <- + self$`minSimilarityAnalogue` + } + if (!is.null(self$`minNumOfPeaksAnalogue`)) { + SpectralLibrarySearchObject[["minNumOfPeaksAnalogue"]] <- + self$`minNumOfPeaksAnalogue` + } if (!is.null(self$`scoring`)) { SpectralLibrarySearchObject[["scoring"]] <- self$`scoring` } + if (!is.null(self$`peakDeviationPpm`)) { + SpectralLibrarySearchObject[["peakDeviationPpm"]] <- + self$`peakDeviationPpm` + } return(SpectralLibrarySearchObject) }, @@ -135,18 +200,33 @@ SpectralLibrarySearch <- R6::R6Class( if (!is.null(this_object$`spectraSearchDBs`)) { self$`spectraSearchDBs` <- ApiClient$new()$deserializeObj(this_object$`spectraSearchDBs`, "array[character]", loadNamespace("Rsirius")) } - if (!is.null(this_object$`peakDeviationPpm`)) { - self$`peakDeviationPpm` <- this_object$`peakDeviationPpm` - } if (!is.null(this_object$`precursorDeviationPpm`)) { self$`precursorDeviationPpm` <- this_object$`precursorDeviationPpm` } + if (!is.null(this_object$`minSimilarity`)) { + self$`minSimilarity` <- this_object$`minSimilarity` + } + if (!is.null(this_object$`minNumOfPeaks`)) { + self$`minNumOfPeaks` <- this_object$`minNumOfPeaks` + } + if (!is.null(this_object$`enableAnalogueSearch`)) { + self$`enableAnalogueSearch` <- this_object$`enableAnalogueSearch` + } + if (!is.null(this_object$`minSimilarityAnalogue`)) { + self$`minSimilarityAnalogue` <- this_object$`minSimilarityAnalogue` + } + if (!is.null(this_object$`minNumOfPeaksAnalogue`)) { + self$`minNumOfPeaksAnalogue` <- this_object$`minNumOfPeaksAnalogue` + } if (!is.null(this_object$`scoring`)) { - if (!is.null(this_object$`scoring`) && !(this_object$`scoring` %in% c("INTENSITY", "GAUSSIAN", "MODIFIED_COSINE"))) { - stop(paste("Error! \"", this_object$`scoring`, "\" cannot be assigned to `scoring`. Must be \"INTENSITY\", \"GAUSSIAN\", \"MODIFIED_COSINE\".", sep = "")) + if (!is.null(this_object$`scoring`) && !(this_object$`scoring` %in% c("INTENSITY", "GAUSSIAN", "MODIFIED_COSINE", "FAST_COSINE"))) { + stop(paste("Error! \"", this_object$`scoring`, "\" cannot be assigned to `scoring`. Must be \"INTENSITY\", \"GAUSSIAN\", \"MODIFIED_COSINE\", \"FAST_COSINE\".", sep = "")) } self$`scoring` <- this_object$`scoring` } + if (!is.null(this_object$`peakDeviationPpm`)) { + self$`peakDeviationPpm` <- this_object$`peakDeviationPpm` + } self }, @@ -170,12 +250,17 @@ SpectralLibrarySearch <- R6::R6Class( this_object <- jsonlite::fromJSON(input_json) self$`enabled` <- this_object$`enabled` self$`spectraSearchDBs` <- ApiClient$new()$deserializeObj(this_object$`spectraSearchDBs`, "array[character]", loadNamespace("Rsirius")) - self$`peakDeviationPpm` <- this_object$`peakDeviationPpm` self$`precursorDeviationPpm` <- this_object$`precursorDeviationPpm` - if (!is.null(this_object$`scoring`) && !(this_object$`scoring` %in% c("INTENSITY", "GAUSSIAN", "MODIFIED_COSINE"))) { - stop(paste("Error! \"", this_object$`scoring`, "\" cannot be assigned to `scoring`. Must be \"INTENSITY\", \"GAUSSIAN\", \"MODIFIED_COSINE\".", sep = "")) + self$`minSimilarity` <- this_object$`minSimilarity` + self$`minNumOfPeaks` <- this_object$`minNumOfPeaks` + self$`enableAnalogueSearch` <- this_object$`enableAnalogueSearch` + self$`minSimilarityAnalogue` <- this_object$`minSimilarityAnalogue` + self$`minNumOfPeaksAnalogue` <- this_object$`minNumOfPeaksAnalogue` + if (!is.null(this_object$`scoring`) && !(this_object$`scoring` %in% c("INTENSITY", "GAUSSIAN", "MODIFIED_COSINE", "FAST_COSINE"))) { + stop(paste("Error! \"", this_object$`scoring`, "\" cannot be assigned to `scoring`. Must be \"INTENSITY\", \"GAUSSIAN\", \"MODIFIED_COSINE\", \"FAST_COSINE\".", sep = "")) } self$`scoring` <- this_object$`scoring` + self$`peakDeviationPpm` <- this_object$`peakDeviationPpm` self }, diff --git a/client-api_r/generated/R/spectrum_annotation.R b/client-api_r/generated/R/spectrum_annotation.R index 151a154b..1e4245c5 100644 --- a/client-api_r/generated/R/spectrum_annotation.R +++ b/client-api_r/generated/R/spectrum_annotation.R @@ -12,8 +12,10 @@ #' @field exactMass Exact mass based on the annotated molecular formula and ionization numeric [optional] #' @field massDeviationMz Absolute mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in mDa numeric [optional] #' @field massDeviationPpm Relative mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in ppm numeric [optional] -#' @field structureAnnotationSmiles EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation Substructure highlighting (bond and atom indices) refer to this specific SMILES. If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might not match correctly anymore. Null if substructure annotation not available or not requested. character [optional] -#' @field structureAnnotationScore EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles) Null if substructure annotation not available or not requested. numeric [optional] +#' @field structureAnnotationSmiles EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.
Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation Substructure highlighting (bond and atom indices) refer to this specific SMILES. If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might not match correctly anymore.
Null if substructure annotation not available or not requested. character [optional] +#' @field structureAnnotationName EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.
Name of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation.
Null if substructure annotation not available or not requested. character [optional] +#' @field structureAnnotationSvg EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.
SVG graphics of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation Substructure highlighting (bond and atom indices) refers to this SVG.
Null if substructure annotation not available or not requested. character [optional] +#' @field structureAnnotationScore EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.
Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles)
Null if substructure annotation not available or not requested. numeric [optional] #' @importFrom R6 R6Class #' @importFrom jsonlite fromJSON toJSON #' @export @@ -26,6 +28,8 @@ SpectrumAnnotation <- R6::R6Class( `massDeviationMz` = NULL, `massDeviationPpm` = NULL, `structureAnnotationSmiles` = NULL, + `structureAnnotationName` = NULL, + `structureAnnotationSvg` = NULL, `structureAnnotationScore` = NULL, #' @description @@ -36,10 +40,12 @@ SpectrumAnnotation <- R6::R6Class( #' @param exactMass Exact mass based on the annotated molecular formula and ionization #' @param massDeviationMz Absolute mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in mDa #' @param massDeviationPpm Relative mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in ppm - #' @param structureAnnotationSmiles EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation Substructure highlighting (bond and atom indices) refer to this specific SMILES. If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might not match correctly anymore. Null if substructure annotation not available or not requested. - #' @param structureAnnotationScore EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles) Null if substructure annotation not available or not requested. + #' @param structureAnnotationSmiles EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.
Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation Substructure highlighting (bond and atom indices) refer to this specific SMILES. If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might not match correctly anymore.
Null if substructure annotation not available or not requested. + #' @param structureAnnotationName EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.
Name of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation.
Null if substructure annotation not available or not requested. + #' @param structureAnnotationSvg EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.
SVG graphics of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation Substructure highlighting (bond and atom indices) refers to this SVG.
Null if substructure annotation not available or not requested. + #' @param structureAnnotationScore EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.
Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles)
Null if substructure annotation not available or not requested. #' @param ... Other optional arguments. - initialize = function(`molecularFormula` = NULL, `adduct` = NULL, `exactMass` = NULL, `massDeviationMz` = NULL, `massDeviationPpm` = NULL, `structureAnnotationSmiles` = NULL, `structureAnnotationScore` = NULL, ...) { + initialize = function(`molecularFormula` = NULL, `adduct` = NULL, `exactMass` = NULL, `massDeviationMz` = NULL, `massDeviationPpm` = NULL, `structureAnnotationSmiles` = NULL, `structureAnnotationName` = NULL, `structureAnnotationSvg` = NULL, `structureAnnotationScore` = NULL, ...) { if (!is.null(`molecularFormula`)) { if (!(is.character(`molecularFormula`) && length(`molecularFormula`) == 1)) { stop(paste("Error! Invalid data for `molecularFormula`. Must be a string:", `molecularFormula`)) @@ -76,6 +82,18 @@ SpectrumAnnotation <- R6::R6Class( } self$`structureAnnotationSmiles` <- `structureAnnotationSmiles` } + if (!is.null(`structureAnnotationName`)) { + if (!(is.character(`structureAnnotationName`) && length(`structureAnnotationName`) == 1)) { + stop(paste("Error! Invalid data for `structureAnnotationName`. Must be a string:", `structureAnnotationName`)) + } + self$`structureAnnotationName` <- `structureAnnotationName` + } + if (!is.null(`structureAnnotationSvg`)) { + if (!(is.character(`structureAnnotationSvg`) && length(`structureAnnotationSvg`) == 1)) { + stop(paste("Error! Invalid data for `structureAnnotationSvg`. Must be a string:", `structureAnnotationSvg`)) + } + self$`structureAnnotationSvg` <- `structureAnnotationSvg` + } if (!is.null(`structureAnnotationScore`)) { if (!(is.numeric(`structureAnnotationScore`) && length(`structureAnnotationScore`) == 1)) { stop(paste("Error! Invalid data for `structureAnnotationScore`. Must be a number:", `structureAnnotationScore`)) @@ -139,6 +157,14 @@ SpectrumAnnotation <- R6::R6Class( SpectrumAnnotationObject[["structureAnnotationSmiles"]] <- self$`structureAnnotationSmiles` } + if (!is.null(self$`structureAnnotationName`)) { + SpectrumAnnotationObject[["structureAnnotationName"]] <- + self$`structureAnnotationName` + } + if (!is.null(self$`structureAnnotationSvg`)) { + SpectrumAnnotationObject[["structureAnnotationSvg"]] <- + self$`structureAnnotationSvg` + } if (!is.null(self$`structureAnnotationScore`)) { SpectrumAnnotationObject[["structureAnnotationScore"]] <- self$`structureAnnotationScore` @@ -171,6 +197,12 @@ SpectrumAnnotation <- R6::R6Class( if (!is.null(this_object$`structureAnnotationSmiles`)) { self$`structureAnnotationSmiles` <- this_object$`structureAnnotationSmiles` } + if (!is.null(this_object$`structureAnnotationName`)) { + self$`structureAnnotationName` <- this_object$`structureAnnotationName` + } + if (!is.null(this_object$`structureAnnotationSvg`)) { + self$`structureAnnotationSvg` <- this_object$`structureAnnotationSvg` + } if (!is.null(this_object$`structureAnnotationScore`)) { self$`structureAnnotationScore` <- this_object$`structureAnnotationScore` } @@ -201,6 +233,8 @@ SpectrumAnnotation <- R6::R6Class( self$`massDeviationMz` <- this_object$`massDeviationMz` self$`massDeviationPpm` <- this_object$`massDeviationPpm` self$`structureAnnotationSmiles` <- this_object$`structureAnnotationSmiles` + self$`structureAnnotationName` <- this_object$`structureAnnotationName` + self$`structureAnnotationSvg` <- this_object$`structureAnnotationSvg` self$`structureAnnotationScore` <- this_object$`structureAnnotationScore` self }, diff --git a/client-api_r/generated/R/statistics_table.R b/client-api_r/generated/R/statistics_table.R new file mode 100644 index 00000000..3009636f --- /dev/null +++ b/client-api_r/generated/R/statistics_table.R @@ -0,0 +1,326 @@ +#' Create a new StatisticsTable +#' +#' @description +#' StatisticsTable Class +#' +#' @docType class +#' @title StatisticsTable +#' @description StatisticsTable Class +#' @format An \code{R6Class} generator object +#' @field statisticsType character [optional] +#' @field aggregationType character [optional] +#' @field quantificationMeasure character [optional] +#' @field rowType character [optional] +#' @field rowIds list(character) [optional] +#' @field columnNames list(character) [optional] +#' @field columnLeftGroups list(character) [optional] +#' @field columnRightGroups list(character) [optional] +#' @field values list(list(numeric)) [optional] +#' @importFrom R6 R6Class +#' @importFrom jsonlite fromJSON toJSON +#' @export +StatisticsTable <- R6::R6Class( + "StatisticsTable", + public = list( + `statisticsType` = NULL, + `aggregationType` = NULL, + `quantificationMeasure` = NULL, + `rowType` = NULL, + `rowIds` = NULL, + `columnNames` = NULL, + `columnLeftGroups` = NULL, + `columnRightGroups` = NULL, + `values` = NULL, + + #' @description + #' Initialize a new StatisticsTable class. + #' + #' @param statisticsType statisticsType + #' @param aggregationType aggregationType + #' @param quantificationMeasure quantificationMeasure + #' @param rowType rowType + #' @param rowIds rowIds + #' @param columnNames columnNames + #' @param columnLeftGroups columnLeftGroups + #' @param columnRightGroups columnRightGroups + #' @param values values + #' @param ... Other optional arguments. + initialize = function(`statisticsType` = NULL, `aggregationType` = NULL, `quantificationMeasure` = NULL, `rowType` = NULL, `rowIds` = NULL, `columnNames` = NULL, `columnLeftGroups` = NULL, `columnRightGroups` = NULL, `values` = NULL, ...) { + if (!is.null(`statisticsType`)) { + if (!(`statisticsType` %in% c("FOLD_CHANGE"))) { + stop(paste("Error! \"", `statisticsType`, "\" cannot be assigned to `statisticsType`. Must be \"FOLD_CHANGE\".", sep = "")) + } + if (!(is.character(`statisticsType`) && length(`statisticsType`) == 1)) { + stop(paste("Error! Invalid data for `statisticsType`. Must be a string:", `statisticsType`)) + } + self$`statisticsType` <- `statisticsType` + } + if (!is.null(`aggregationType`)) { + if (!(`aggregationType` %in% c("AVG", "MIN", "MAX"))) { + stop(paste("Error! \"", `aggregationType`, "\" cannot be assigned to `aggregationType`. Must be \"AVG\", \"MIN\", \"MAX\".", sep = "")) + } + if (!(is.character(`aggregationType`) && length(`aggregationType`) == 1)) { + stop(paste("Error! Invalid data for `aggregationType`. Must be a string:", `aggregationType`)) + } + self$`aggregationType` <- `aggregationType` + } + if (!is.null(`quantificationMeasure`)) { + if (!(`quantificationMeasure` %in% c("APEX_INTENSITY", "AREA_UNDER_CURVE"))) { + stop(paste("Error! \"", `quantificationMeasure`, "\" cannot be assigned to `quantificationMeasure`. Must be \"APEX_INTENSITY\", \"AREA_UNDER_CURVE\".", sep = "")) + } + if (!(is.character(`quantificationMeasure`) && length(`quantificationMeasure`) == 1)) { + stop(paste("Error! Invalid data for `quantificationMeasure`. Must be a string:", `quantificationMeasure`)) + } + self$`quantificationMeasure` <- `quantificationMeasure` + } + if (!is.null(`rowType`)) { + if (!(`rowType` %in% c("FEATURES", "COMPOUNDS"))) { + stop(paste("Error! \"", `rowType`, "\" cannot be assigned to `rowType`. Must be \"FEATURES\", \"COMPOUNDS\".", sep = "")) + } + if (!(is.character(`rowType`) && length(`rowType`) == 1)) { + stop(paste("Error! Invalid data for `rowType`. Must be a string:", `rowType`)) + } + self$`rowType` <- `rowType` + } + if (!is.null(`rowIds`)) { + stopifnot(is.vector(`rowIds`), length(`rowIds`) != 0) + sapply(`rowIds`, function(x) stopifnot(is.character(x))) + self$`rowIds` <- `rowIds` + } + if (!is.null(`columnNames`)) { + stopifnot(is.vector(`columnNames`), length(`columnNames`) != 0) + sapply(`columnNames`, function(x) stopifnot(is.character(x))) + self$`columnNames` <- `columnNames` + } + if (!is.null(`columnLeftGroups`)) { + stopifnot(is.vector(`columnLeftGroups`), length(`columnLeftGroups`) != 0) + sapply(`columnLeftGroups`, function(x) stopifnot(is.character(x))) + self$`columnLeftGroups` <- `columnLeftGroups` + } + if (!is.null(`columnRightGroups`)) { + stopifnot(is.vector(`columnRightGroups`), length(`columnRightGroups`) != 0) + sapply(`columnRightGroups`, function(x) stopifnot(is.character(x))) + self$`columnRightGroups` <- `columnRightGroups` + } + if (!is.null(`values`)) { + stopifnot(is.vector(`values`), length(`values`) != 0) + sapply(`values`, function(x) stopifnot(R6::is.R6(x))) + self$`values` <- `values` + } + }, + + #' @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 StatisticsTable as a base R list. + #' @examples + #' # convert array of StatisticsTable (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 StatisticsTable to a base R type + #' + #' @return A base R type, e.g. a list or numeric/character array. + toSimpleType = function() { + StatisticsTableObject <- list() + if (!is.null(self$`statisticsType`)) { + StatisticsTableObject[["statisticsType"]] <- + self$`statisticsType` + } + if (!is.null(self$`aggregationType`)) { + StatisticsTableObject[["aggregationType"]] <- + self$`aggregationType` + } + if (!is.null(self$`quantificationMeasure`)) { + StatisticsTableObject[["quantificationMeasure"]] <- + self$`quantificationMeasure` + } + if (!is.null(self$`rowType`)) { + StatisticsTableObject[["rowType"]] <- + self$`rowType` + } + if (!is.null(self$`rowIds`)) { + StatisticsTableObject[["rowIds"]] <- + self$`rowIds` + } + if (!is.null(self$`columnNames`)) { + StatisticsTableObject[["columnNames"]] <- + self$`columnNames` + } + if (!is.null(self$`columnLeftGroups`)) { + StatisticsTableObject[["columnLeftGroups"]] <- + self$`columnLeftGroups` + } + if (!is.null(self$`columnRightGroups`)) { + StatisticsTableObject[["columnRightGroups"]] <- + self$`columnRightGroups` + } + if (!is.null(self$`values`)) { + StatisticsTableObject[["values"]] <- + lapply(self$`values`, function(x) x$toSimpleType()) + } + return(StatisticsTableObject) + }, + + #' @description + #' Deserialize JSON string into an instance of StatisticsTable + #' + #' @param input_json the JSON input + #' @return the instance of StatisticsTable + fromJSON = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`statisticsType`)) { + if (!is.null(this_object$`statisticsType`) && !(this_object$`statisticsType` %in% c("FOLD_CHANGE"))) { + stop(paste("Error! \"", this_object$`statisticsType`, "\" cannot be assigned to `statisticsType`. Must be \"FOLD_CHANGE\".", sep = "")) + } + self$`statisticsType` <- this_object$`statisticsType` + } + if (!is.null(this_object$`aggregationType`)) { + if (!is.null(this_object$`aggregationType`) && !(this_object$`aggregationType` %in% c("AVG", "MIN", "MAX"))) { + stop(paste("Error! \"", this_object$`aggregationType`, "\" cannot be assigned to `aggregationType`. Must be \"AVG\", \"MIN\", \"MAX\".", sep = "")) + } + self$`aggregationType` <- this_object$`aggregationType` + } + if (!is.null(this_object$`quantificationMeasure`)) { + if (!is.null(this_object$`quantificationMeasure`) && !(this_object$`quantificationMeasure` %in% c("APEX_INTENSITY", "AREA_UNDER_CURVE"))) { + stop(paste("Error! \"", this_object$`quantificationMeasure`, "\" cannot be assigned to `quantificationMeasure`. Must be \"APEX_INTENSITY\", \"AREA_UNDER_CURVE\".", sep = "")) + } + self$`quantificationMeasure` <- this_object$`quantificationMeasure` + } + if (!is.null(this_object$`rowType`)) { + if (!is.null(this_object$`rowType`) && !(this_object$`rowType` %in% c("FEATURES", "COMPOUNDS"))) { + stop(paste("Error! \"", this_object$`rowType`, "\" cannot be assigned to `rowType`. Must be \"FEATURES\", \"COMPOUNDS\".", sep = "")) + } + self$`rowType` <- this_object$`rowType` + } + if (!is.null(this_object$`rowIds`)) { + self$`rowIds` <- ApiClient$new()$deserializeObj(this_object$`rowIds`, "array[character]", loadNamespace("Rsirius")) + } + if (!is.null(this_object$`columnNames`)) { + self$`columnNames` <- ApiClient$new()$deserializeObj(this_object$`columnNames`, "array[character]", loadNamespace("Rsirius")) + } + if (!is.null(this_object$`columnLeftGroups`)) { + self$`columnLeftGroups` <- ApiClient$new()$deserializeObj(this_object$`columnLeftGroups`, "array[character]", loadNamespace("Rsirius")) + } + if (!is.null(this_object$`columnRightGroups`)) { + self$`columnRightGroups` <- ApiClient$new()$deserializeObj(this_object$`columnRightGroups`, "array[character]", loadNamespace("Rsirius")) + } + if (!is.null(this_object$`values`)) { + self$`values` <- ApiClient$new()$deserializeObj(this_object$`values`, "array[array[numeric]]", loadNamespace("Rsirius")) + } + self + }, + + #' @description + #' To JSON String + #' + #' @param ... Parameters passed to `jsonlite::toJSON` + #' @return StatisticsTable 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 StatisticsTable + #' + #' @param input_json the JSON input + #' @return the instance of StatisticsTable + fromJSONString = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`statisticsType`) && !(this_object$`statisticsType` %in% c("FOLD_CHANGE"))) { + stop(paste("Error! \"", this_object$`statisticsType`, "\" cannot be assigned to `statisticsType`. Must be \"FOLD_CHANGE\".", sep = "")) + } + self$`statisticsType` <- this_object$`statisticsType` + if (!is.null(this_object$`aggregationType`) && !(this_object$`aggregationType` %in% c("AVG", "MIN", "MAX"))) { + stop(paste("Error! \"", this_object$`aggregationType`, "\" cannot be assigned to `aggregationType`. Must be \"AVG\", \"MIN\", \"MAX\".", sep = "")) + } + self$`aggregationType` <- this_object$`aggregationType` + if (!is.null(this_object$`quantificationMeasure`) && !(this_object$`quantificationMeasure` %in% c("APEX_INTENSITY", "AREA_UNDER_CURVE"))) { + stop(paste("Error! \"", this_object$`quantificationMeasure`, "\" cannot be assigned to `quantificationMeasure`. Must be \"APEX_INTENSITY\", \"AREA_UNDER_CURVE\".", sep = "")) + } + self$`quantificationMeasure` <- this_object$`quantificationMeasure` + if (!is.null(this_object$`rowType`) && !(this_object$`rowType` %in% c("FEATURES", "COMPOUNDS"))) { + stop(paste("Error! \"", this_object$`rowType`, "\" cannot be assigned to `rowType`. Must be \"FEATURES\", \"COMPOUNDS\".", sep = "")) + } + self$`rowType` <- this_object$`rowType` + self$`rowIds` <- ApiClient$new()$deserializeObj(this_object$`rowIds`, "array[character]", loadNamespace("Rsirius")) + self$`columnNames` <- ApiClient$new()$deserializeObj(this_object$`columnNames`, "array[character]", loadNamespace("Rsirius")) + self$`columnLeftGroups` <- ApiClient$new()$deserializeObj(this_object$`columnLeftGroups`, "array[character]", loadNamespace("Rsirius")) + self$`columnRightGroups` <- ApiClient$new()$deserializeObj(this_object$`columnRightGroups`, "array[character]", loadNamespace("Rsirius")) + self$`values` <- ApiClient$new()$deserializeObj(this_object$`values`, "array[array[numeric]]", loadNamespace("Rsirius")) + self + }, + + #' @description + #' Validate JSON input with respect to StatisticsTable 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 StatisticsTable + 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 +# StatisticsTable$unlock() +# +## Below is an example to define the print function +# StatisticsTable$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 +# StatisticsTable$lock() + diff --git a/client-api_r/generated/R/stored_job_submission.R b/client-api_r/generated/R/stored_job_submission.R index 441b4f79..43447b9b 100644 --- a/client-api_r/generated/R/stored_job_submission.R +++ b/client-api_r/generated/R/stored_job_submission.R @@ -9,7 +9,7 @@ #' @format An \code{R6Class} generator object #' @field name Unique name to identify this JobSubmission (job config). character #' @field editable False for predefined configs which are not editable and not removable. character -#' @field jobSubmission \link{JobSubmission} +#' @field jobSubmission The JobSubmission identified by the name \link{JobSubmission} #' @importFrom R6 R6Class #' @importFrom jsonlite fromJSON toJSON #' @export @@ -25,7 +25,7 @@ StoredJobSubmission <- R6::R6Class( #' #' @param name Unique name to identify this JobSubmission (job config). #' @param editable False for predefined configs which are not editable and not removable. - #' @param jobSubmission jobSubmission + #' @param jobSubmission The JobSubmission identified by the name #' @param ... Other optional arguments. initialize = function(`name`, `editable`, `jobSubmission`, ...) { if (!missing(`name`)) { diff --git a/client-api_r/generated/R/structure_candidate.R b/client-api_r/generated/R/structure_candidate.R index a77e882e..7cee81da 100644 --- a/client-api_r/generated/R/structure_candidate.R +++ b/client-api_r/generated/R/structure_candidate.R @@ -10,9 +10,10 @@ #' @field inchiKey character [optional] #' @field smiles character [optional] #' @field structureName character [optional] -#' @field xlogP numeric [optional] +#' @field structureSvg SVG graphics of the structure candidate OPTIONAL: needs to be added by parameter character [optional] #' @field dbLinks List of structure database links belonging to this structure candidate OPTIONAL: needs to be added by parameter list(\link{DBLink}) [optional] #' @field spectralLibraryMatches List of spectral library matches belonging to this structure candidate OPTIONAL: needs to be added by parameter list(\link{SpectralLibraryMatch}) [optional] +#' @field xlogP numeric [optional] #' @importFrom R6 R6Class #' @importFrom jsonlite fromJSON toJSON #' @export @@ -22,9 +23,10 @@ StructureCandidate <- R6::R6Class( `inchiKey` = NULL, `smiles` = NULL, `structureName` = NULL, - `xlogP` = NULL, + `structureSvg` = NULL, `dbLinks` = NULL, `spectralLibraryMatches` = NULL, + `xlogP` = NULL, #' @description #' Initialize a new StructureCandidate class. @@ -32,11 +34,12 @@ StructureCandidate <- R6::R6Class( #' @param inchiKey inchiKey #' @param smiles smiles #' @param structureName structureName - #' @param xlogP xlogP + #' @param structureSvg SVG graphics of the structure candidate OPTIONAL: needs to be added by parameter #' @param dbLinks List of structure database links belonging to this structure candidate OPTIONAL: needs to be added by parameter #' @param spectralLibraryMatches List of spectral library matches belonging to this structure candidate OPTIONAL: needs to be added by parameter + #' @param xlogP xlogP #' @param ... Other optional arguments. - initialize = function(`inchiKey` = NULL, `smiles` = NULL, `structureName` = NULL, `xlogP` = NULL, `dbLinks` = NULL, `spectralLibraryMatches` = NULL, ...) { + initialize = function(`inchiKey` = NULL, `smiles` = NULL, `structureName` = NULL, `structureSvg` = NULL, `dbLinks` = NULL, `spectralLibraryMatches` = NULL, `xlogP` = NULL, ...) { if (!is.null(`inchiKey`)) { if (!(is.character(`inchiKey`) && length(`inchiKey`) == 1)) { stop(paste("Error! Invalid data for `inchiKey`. Must be a string:", `inchiKey`)) @@ -55,11 +58,11 @@ StructureCandidate <- R6::R6Class( } self$`structureName` <- `structureName` } - if (!is.null(`xlogP`)) { - if (!(is.numeric(`xlogP`) && length(`xlogP`) == 1)) { - stop(paste("Error! Invalid data for `xlogP`. Must be a number:", `xlogP`)) + if (!is.null(`structureSvg`)) { + if (!(is.character(`structureSvg`) && length(`structureSvg`) == 1)) { + stop(paste("Error! Invalid data for `structureSvg`. Must be a string:", `structureSvg`)) } - self$`xlogP` <- `xlogP` + self$`structureSvg` <- `structureSvg` } if (!is.null(`dbLinks`)) { stopifnot(is.vector(`dbLinks`), length(`dbLinks`) != 0) @@ -71,6 +74,12 @@ StructureCandidate <- R6::R6Class( sapply(`spectralLibraryMatches`, function(x) stopifnot(R6::is.R6(x))) self$`spectralLibraryMatches` <- `spectralLibraryMatches` } + if (!is.null(`xlogP`)) { + if (!(is.numeric(`xlogP`) && length(`xlogP`) == 1)) { + stop(paste("Error! Invalid data for `xlogP`. Must be a number:", `xlogP`)) + } + self$`xlogP` <- `xlogP` + } }, #' @description @@ -116,9 +125,9 @@ StructureCandidate <- R6::R6Class( StructureCandidateObject[["structureName"]] <- self$`structureName` } - if (!is.null(self$`xlogP`)) { - StructureCandidateObject[["xlogP"]] <- - self$`xlogP` + if (!is.null(self$`structureSvg`)) { + StructureCandidateObject[["structureSvg"]] <- + self$`structureSvg` } if (!is.null(self$`dbLinks`)) { StructureCandidateObject[["dbLinks"]] <- @@ -128,6 +137,10 @@ StructureCandidate <- R6::R6Class( StructureCandidateObject[["spectralLibraryMatches"]] <- lapply(self$`spectralLibraryMatches`, function(x) x$toSimpleType()) } + if (!is.null(self$`xlogP`)) { + StructureCandidateObject[["xlogP"]] <- + self$`xlogP` + } return(StructureCandidateObject) }, @@ -147,8 +160,8 @@ StructureCandidate <- R6::R6Class( if (!is.null(this_object$`structureName`)) { self$`structureName` <- this_object$`structureName` } - if (!is.null(this_object$`xlogP`)) { - self$`xlogP` <- this_object$`xlogP` + if (!is.null(this_object$`structureSvg`)) { + self$`structureSvg` <- this_object$`structureSvg` } if (!is.null(this_object$`dbLinks`)) { self$`dbLinks` <- ApiClient$new()$deserializeObj(this_object$`dbLinks`, "array[DBLink]", loadNamespace("Rsirius")) @@ -156,6 +169,9 @@ StructureCandidate <- R6::R6Class( if (!is.null(this_object$`spectralLibraryMatches`)) { self$`spectralLibraryMatches` <- ApiClient$new()$deserializeObj(this_object$`spectralLibraryMatches`, "array[SpectralLibraryMatch]", loadNamespace("Rsirius")) } + if (!is.null(this_object$`xlogP`)) { + self$`xlogP` <- this_object$`xlogP` + } self }, @@ -180,9 +196,10 @@ StructureCandidate <- R6::R6Class( self$`inchiKey` <- this_object$`inchiKey` self$`smiles` <- this_object$`smiles` self$`structureName` <- this_object$`structureName` - self$`xlogP` <- this_object$`xlogP` + self$`structureSvg` <- this_object$`structureSvg` self$`dbLinks` <- ApiClient$new()$deserializeObj(this_object$`dbLinks`, "array[DBLink]", loadNamespace("Rsirius")) self$`spectralLibraryMatches` <- ApiClient$new()$deserializeObj(this_object$`spectralLibraryMatches`, "array[SpectralLibraryMatch]", loadNamespace("Rsirius")) + self$`xlogP` <- this_object$`xlogP` self }, diff --git a/client-api_r/generated/R/structure_candidate_formula.R b/client-api_r/generated/R/structure_candidate_formula.R index ac8b703a..f9a4dfbb 100644 --- a/client-api_r/generated/R/structure_candidate_formula.R +++ b/client-api_r/generated/R/structure_candidate_formula.R @@ -10,14 +10,15 @@ #' @field inchiKey character [optional] #' @field smiles character [optional] #' @field structureName character [optional] -#' @field xlogP numeric [optional] +#' @field structureSvg SVG graphics of the structure candidate OPTIONAL: needs to be added by parameter character [optional] #' @field dbLinks List of structure database links belonging to this structure candidate OPTIONAL: needs to be added by parameter list(\link{DBLink}) [optional] #' @field spectralLibraryMatches List of spectral library matches belonging to this structure candidate OPTIONAL: needs to be added by parameter list(\link{SpectralLibraryMatch}) [optional] +#' @field xlogP numeric [optional] #' @field rank the overall rank of this candidate among all candidates of this feature integer [optional] #' @field csiScore CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID This is the score used for ranking structure candidates numeric [optional] #' @field tanimotoSimilarity Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID numeric [optional] #' @field mcesDistToTopHit Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list. numeric [optional] -#' @field fingerprint \link{BinaryFingerprint} [optional] +#' @field fingerprint Array containing the indices of the molecular fingerprint that are available in the structure (1 if present) OPTIONAL: needs to be added by parameter \link{BinaryFingerprint} [optional] #' @field molecularFormula Molecular formula of this candidate character [optional] #' @field adduct Adduct of this candidate character [optional] #' @field formulaId Id of the corresponding Formula candidate character [optional] @@ -30,9 +31,10 @@ StructureCandidateFormula <- R6::R6Class( `inchiKey` = NULL, `smiles` = NULL, `structureName` = NULL, - `xlogP` = NULL, + `structureSvg` = NULL, `dbLinks` = NULL, `spectralLibraryMatches` = NULL, + `xlogP` = NULL, `rank` = NULL, `csiScore` = NULL, `tanimotoSimilarity` = NULL, @@ -48,19 +50,20 @@ StructureCandidateFormula <- R6::R6Class( #' @param inchiKey inchiKey #' @param smiles smiles #' @param structureName structureName - #' @param xlogP xlogP + #' @param structureSvg SVG graphics of the structure candidate OPTIONAL: needs to be added by parameter #' @param dbLinks List of structure database links belonging to this structure candidate OPTIONAL: needs to be added by parameter #' @param spectralLibraryMatches List of spectral library matches belonging to this structure candidate OPTIONAL: needs to be added by parameter + #' @param xlogP xlogP #' @param rank the overall rank of this candidate among all candidates of this feature #' @param csiScore CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID This is the score used for ranking structure candidates #' @param tanimotoSimilarity Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID #' @param mcesDistToTopHit Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list. - #' @param fingerprint fingerprint + #' @param fingerprint Array containing the indices of the molecular fingerprint that are available in the structure (1 if present) OPTIONAL: needs to be added by parameter #' @param molecularFormula Molecular formula of this candidate #' @param adduct Adduct of this candidate #' @param formulaId Id of the corresponding Formula candidate #' @param ... Other optional arguments. - initialize = function(`inchiKey` = NULL, `smiles` = NULL, `structureName` = NULL, `xlogP` = NULL, `dbLinks` = NULL, `spectralLibraryMatches` = NULL, `rank` = NULL, `csiScore` = NULL, `tanimotoSimilarity` = NULL, `mcesDistToTopHit` = NULL, `fingerprint` = NULL, `molecularFormula` = NULL, `adduct` = NULL, `formulaId` = NULL, ...) { + initialize = function(`inchiKey` = NULL, `smiles` = NULL, `structureName` = NULL, `structureSvg` = NULL, `dbLinks` = NULL, `spectralLibraryMatches` = NULL, `xlogP` = NULL, `rank` = NULL, `csiScore` = NULL, `tanimotoSimilarity` = NULL, `mcesDistToTopHit` = NULL, `fingerprint` = NULL, `molecularFormula` = NULL, `adduct` = NULL, `formulaId` = NULL, ...) { if (!is.null(`inchiKey`)) { if (!(is.character(`inchiKey`) && length(`inchiKey`) == 1)) { stop(paste("Error! Invalid data for `inchiKey`. Must be a string:", `inchiKey`)) @@ -79,11 +82,11 @@ StructureCandidateFormula <- R6::R6Class( } self$`structureName` <- `structureName` } - if (!is.null(`xlogP`)) { - if (!(is.numeric(`xlogP`) && length(`xlogP`) == 1)) { - stop(paste("Error! Invalid data for `xlogP`. Must be a number:", `xlogP`)) + if (!is.null(`structureSvg`)) { + if (!(is.character(`structureSvg`) && length(`structureSvg`) == 1)) { + stop(paste("Error! Invalid data for `structureSvg`. Must be a string:", `structureSvg`)) } - self$`xlogP` <- `xlogP` + self$`structureSvg` <- `structureSvg` } if (!is.null(`dbLinks`)) { stopifnot(is.vector(`dbLinks`), length(`dbLinks`) != 0) @@ -95,6 +98,12 @@ StructureCandidateFormula <- R6::R6Class( sapply(`spectralLibraryMatches`, function(x) stopifnot(R6::is.R6(x))) self$`spectralLibraryMatches` <- `spectralLibraryMatches` } + if (!is.null(`xlogP`)) { + if (!(is.numeric(`xlogP`) && length(`xlogP`) == 1)) { + stop(paste("Error! Invalid data for `xlogP`. Must be a number:", `xlogP`)) + } + self$`xlogP` <- `xlogP` + } if (!is.null(`rank`)) { if (!(is.numeric(`rank`) && length(`rank`) == 1)) { stop(paste("Error! Invalid data for `rank`. Must be an integer:", `rank`)) @@ -186,9 +195,9 @@ StructureCandidateFormula <- R6::R6Class( StructureCandidateFormulaObject[["structureName"]] <- self$`structureName` } - if (!is.null(self$`xlogP`)) { - StructureCandidateFormulaObject[["xlogP"]] <- - self$`xlogP` + if (!is.null(self$`structureSvg`)) { + StructureCandidateFormulaObject[["structureSvg"]] <- + self$`structureSvg` } if (!is.null(self$`dbLinks`)) { StructureCandidateFormulaObject[["dbLinks"]] <- @@ -198,6 +207,10 @@ StructureCandidateFormula <- R6::R6Class( StructureCandidateFormulaObject[["spectralLibraryMatches"]] <- lapply(self$`spectralLibraryMatches`, function(x) x$toSimpleType()) } + if (!is.null(self$`xlogP`)) { + StructureCandidateFormulaObject[["xlogP"]] <- + self$`xlogP` + } if (!is.null(self$`rank`)) { StructureCandidateFormulaObject[["rank"]] <- self$`rank` @@ -249,8 +262,8 @@ StructureCandidateFormula <- R6::R6Class( if (!is.null(this_object$`structureName`)) { self$`structureName` <- this_object$`structureName` } - if (!is.null(this_object$`xlogP`)) { - self$`xlogP` <- this_object$`xlogP` + if (!is.null(this_object$`structureSvg`)) { + self$`structureSvg` <- this_object$`structureSvg` } if (!is.null(this_object$`dbLinks`)) { self$`dbLinks` <- ApiClient$new()$deserializeObj(this_object$`dbLinks`, "array[DBLink]", loadNamespace("Rsirius")) @@ -258,6 +271,9 @@ StructureCandidateFormula <- R6::R6Class( if (!is.null(this_object$`spectralLibraryMatches`)) { self$`spectralLibraryMatches` <- ApiClient$new()$deserializeObj(this_object$`spectralLibraryMatches`, "array[SpectralLibraryMatch]", loadNamespace("Rsirius")) } + if (!is.null(this_object$`xlogP`)) { + self$`xlogP` <- this_object$`xlogP` + } if (!is.null(this_object$`rank`)) { self$`rank` <- this_object$`rank` } @@ -308,9 +324,10 @@ StructureCandidateFormula <- R6::R6Class( self$`inchiKey` <- this_object$`inchiKey` self$`smiles` <- this_object$`smiles` self$`structureName` <- this_object$`structureName` - self$`xlogP` <- this_object$`xlogP` + self$`structureSvg` <- this_object$`structureSvg` self$`dbLinks` <- ApiClient$new()$deserializeObj(this_object$`dbLinks`, "array[DBLink]", loadNamespace("Rsirius")) self$`spectralLibraryMatches` <- ApiClient$new()$deserializeObj(this_object$`spectralLibraryMatches`, "array[SpectralLibraryMatch]", loadNamespace("Rsirius")) + self$`xlogP` <- this_object$`xlogP` self$`rank` <- this_object$`rank` self$`csiScore` <- this_object$`csiScore` self$`tanimotoSimilarity` <- this_object$`tanimotoSimilarity` diff --git a/client-api_r/generated/R/structure_candidate_scored.R b/client-api_r/generated/R/structure_candidate_scored.R index 52ffcbea..3adfd6a3 100644 --- a/client-api_r/generated/R/structure_candidate_scored.R +++ b/client-api_r/generated/R/structure_candidate_scored.R @@ -10,14 +10,15 @@ #' @field inchiKey character [optional] #' @field smiles character [optional] #' @field structureName character [optional] -#' @field xlogP numeric [optional] +#' @field structureSvg SVG graphics of the structure candidate OPTIONAL: needs to be added by parameter character [optional] #' @field dbLinks List of structure database links belonging to this structure candidate OPTIONAL: needs to be added by parameter list(\link{DBLink}) [optional] #' @field spectralLibraryMatches List of spectral library matches belonging to this structure candidate OPTIONAL: needs to be added by parameter list(\link{SpectralLibraryMatch}) [optional] +#' @field xlogP numeric [optional] #' @field rank the overall rank of this candidate among all candidates of this feature integer [optional] #' @field csiScore CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID This is the score used for ranking structure candidates numeric [optional] #' @field tanimotoSimilarity Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID numeric [optional] #' @field mcesDistToTopHit Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list. numeric [optional] -#' @field fingerprint \link{BinaryFingerprint} [optional] +#' @field fingerprint Array containing the indices of the molecular fingerprint that are available in the structure (1 if present) OPTIONAL: needs to be added by parameter \link{BinaryFingerprint} [optional] #' @importFrom R6 R6Class #' @importFrom jsonlite fromJSON toJSON #' @export @@ -27,9 +28,10 @@ StructureCandidateScored <- R6::R6Class( `inchiKey` = NULL, `smiles` = NULL, `structureName` = NULL, - `xlogP` = NULL, + `structureSvg` = NULL, `dbLinks` = NULL, `spectralLibraryMatches` = NULL, + `xlogP` = NULL, `rank` = NULL, `csiScore` = NULL, `tanimotoSimilarity` = NULL, @@ -42,16 +44,17 @@ StructureCandidateScored <- R6::R6Class( #' @param inchiKey inchiKey #' @param smiles smiles #' @param structureName structureName - #' @param xlogP xlogP + #' @param structureSvg SVG graphics of the structure candidate OPTIONAL: needs to be added by parameter #' @param dbLinks List of structure database links belonging to this structure candidate OPTIONAL: needs to be added by parameter #' @param spectralLibraryMatches List of spectral library matches belonging to this structure candidate OPTIONAL: needs to be added by parameter + #' @param xlogP xlogP #' @param rank the overall rank of this candidate among all candidates of this feature #' @param csiScore CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID This is the score used for ranking structure candidates #' @param tanimotoSimilarity Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID #' @param mcesDistToTopHit Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list. - #' @param fingerprint fingerprint + #' @param fingerprint Array containing the indices of the molecular fingerprint that are available in the structure (1 if present) OPTIONAL: needs to be added by parameter #' @param ... Other optional arguments. - initialize = function(`inchiKey` = NULL, `smiles` = NULL, `structureName` = NULL, `xlogP` = NULL, `dbLinks` = NULL, `spectralLibraryMatches` = NULL, `rank` = NULL, `csiScore` = NULL, `tanimotoSimilarity` = NULL, `mcesDistToTopHit` = NULL, `fingerprint` = NULL, ...) { + initialize = function(`inchiKey` = NULL, `smiles` = NULL, `structureName` = NULL, `structureSvg` = NULL, `dbLinks` = NULL, `spectralLibraryMatches` = NULL, `xlogP` = NULL, `rank` = NULL, `csiScore` = NULL, `tanimotoSimilarity` = NULL, `mcesDistToTopHit` = NULL, `fingerprint` = NULL, ...) { if (!is.null(`inchiKey`)) { if (!(is.character(`inchiKey`) && length(`inchiKey`) == 1)) { stop(paste("Error! Invalid data for `inchiKey`. Must be a string:", `inchiKey`)) @@ -70,11 +73,11 @@ StructureCandidateScored <- R6::R6Class( } self$`structureName` <- `structureName` } - if (!is.null(`xlogP`)) { - if (!(is.numeric(`xlogP`) && length(`xlogP`) == 1)) { - stop(paste("Error! Invalid data for `xlogP`. Must be a number:", `xlogP`)) + if (!is.null(`structureSvg`)) { + if (!(is.character(`structureSvg`) && length(`structureSvg`) == 1)) { + stop(paste("Error! Invalid data for `structureSvg`. Must be a string:", `structureSvg`)) } - self$`xlogP` <- `xlogP` + self$`structureSvg` <- `structureSvg` } if (!is.null(`dbLinks`)) { stopifnot(is.vector(`dbLinks`), length(`dbLinks`) != 0) @@ -86,6 +89,12 @@ StructureCandidateScored <- R6::R6Class( sapply(`spectralLibraryMatches`, function(x) stopifnot(R6::is.R6(x))) self$`spectralLibraryMatches` <- `spectralLibraryMatches` } + if (!is.null(`xlogP`)) { + if (!(is.numeric(`xlogP`) && length(`xlogP`) == 1)) { + stop(paste("Error! Invalid data for `xlogP`. Must be a number:", `xlogP`)) + } + self$`xlogP` <- `xlogP` + } if (!is.null(`rank`)) { if (!(is.numeric(`rank`) && length(`rank`) == 1)) { stop(paste("Error! Invalid data for `rank`. Must be an integer:", `rank`)) @@ -159,9 +168,9 @@ StructureCandidateScored <- R6::R6Class( StructureCandidateScoredObject[["structureName"]] <- self$`structureName` } - if (!is.null(self$`xlogP`)) { - StructureCandidateScoredObject[["xlogP"]] <- - self$`xlogP` + if (!is.null(self$`structureSvg`)) { + StructureCandidateScoredObject[["structureSvg"]] <- + self$`structureSvg` } if (!is.null(self$`dbLinks`)) { StructureCandidateScoredObject[["dbLinks"]] <- @@ -171,6 +180,10 @@ StructureCandidateScored <- R6::R6Class( StructureCandidateScoredObject[["spectralLibraryMatches"]] <- lapply(self$`spectralLibraryMatches`, function(x) x$toSimpleType()) } + if (!is.null(self$`xlogP`)) { + StructureCandidateScoredObject[["xlogP"]] <- + self$`xlogP` + } if (!is.null(self$`rank`)) { StructureCandidateScoredObject[["rank"]] <- self$`rank` @@ -210,8 +223,8 @@ StructureCandidateScored <- R6::R6Class( if (!is.null(this_object$`structureName`)) { self$`structureName` <- this_object$`structureName` } - if (!is.null(this_object$`xlogP`)) { - self$`xlogP` <- this_object$`xlogP` + if (!is.null(this_object$`structureSvg`)) { + self$`structureSvg` <- this_object$`structureSvg` } if (!is.null(this_object$`dbLinks`)) { self$`dbLinks` <- ApiClient$new()$deserializeObj(this_object$`dbLinks`, "array[DBLink]", loadNamespace("Rsirius")) @@ -219,6 +232,9 @@ StructureCandidateScored <- R6::R6Class( if (!is.null(this_object$`spectralLibraryMatches`)) { self$`spectralLibraryMatches` <- ApiClient$new()$deserializeObj(this_object$`spectralLibraryMatches`, "array[SpectralLibraryMatch]", loadNamespace("Rsirius")) } + if (!is.null(this_object$`xlogP`)) { + self$`xlogP` <- this_object$`xlogP` + } if (!is.null(this_object$`rank`)) { self$`rank` <- this_object$`rank` } @@ -260,9 +276,10 @@ StructureCandidateScored <- R6::R6Class( self$`inchiKey` <- this_object$`inchiKey` self$`smiles` <- this_object$`smiles` self$`structureName` <- this_object$`structureName` - self$`xlogP` <- this_object$`xlogP` + self$`structureSvg` <- this_object$`structureSvg` self$`dbLinks` <- ApiClient$new()$deserializeObj(this_object$`dbLinks`, "array[DBLink]", loadNamespace("Rsirius")) self$`spectralLibraryMatches` <- ApiClient$new()$deserializeObj(this_object$`spectralLibraryMatches`, "array[SpectralLibraryMatch]", loadNamespace("Rsirius")) + self$`xlogP` <- this_object$`xlogP` self$`rank` <- this_object$`rank` self$`csiScore` <- this_object$`csiScore` self$`tanimotoSimilarity` <- this_object$`tanimotoSimilarity` diff --git a/client-api_r/generated/R/subscription.R b/client-api_r/generated/R/subscription.R index e6d75ab9..674cc473 100644 --- a/client-api_r/generated/R/subscription.R +++ b/client-api_r/generated/R/subscription.R @@ -22,6 +22,7 @@ #' @field name character [optional] #' @field tos character [optional] #' @field pp character [optional] +#' @field allowedFeatures \link{AllowedFeatures} [optional] #' @importFrom R6 R6Class #' @importFrom jsonlite fromJSON toJSON #' @export @@ -43,6 +44,7 @@ Subscription <- R6::R6Class( `name` = NULL, `tos` = NULL, `pp` = NULL, + `allowedFeatures` = NULL, #' @description #' Initialize a new Subscription class. @@ -62,8 +64,9 @@ Subscription <- R6::R6Class( #' @param name name #' @param tos tos #' @param pp pp + #' @param allowedFeatures allowedFeatures #' @param ... Other optional arguments. - initialize = function(`sid` = NULL, `subscriberId` = NULL, `subscriberName` = NULL, `expirationDate` = NULL, `startDate` = NULL, `countQueries` = NULL, `instanceLimit` = NULL, `instanceHashRecordingTime` = NULL, `maxQueriesPerInstance` = NULL, `maxUserAccounts` = NULL, `serviceUrl` = NULL, `description` = NULL, `name` = NULL, `tos` = NULL, `pp` = NULL, ...) { + initialize = function(`sid` = NULL, `subscriberId` = NULL, `subscriberName` = NULL, `expirationDate` = NULL, `startDate` = NULL, `countQueries` = NULL, `instanceLimit` = NULL, `instanceHashRecordingTime` = NULL, `maxQueriesPerInstance` = NULL, `maxUserAccounts` = NULL, `serviceUrl` = NULL, `description` = NULL, `name` = NULL, `tos` = NULL, `pp` = NULL, `allowedFeatures` = NULL, ...) { if (!is.null(`sid`)) { if (!(is.character(`sid`) && length(`sid`) == 1)) { stop(paste("Error! Invalid data for `sid`. Must be a string:", `sid`)) @@ -154,6 +157,10 @@ Subscription <- R6::R6Class( } self$`pp` <- `pp` } + if (!is.null(`allowedFeatures`)) { + stopifnot(R6::is.R6(`allowedFeatures`)) + self$`allowedFeatures` <- `allowedFeatures` + } }, #' @description @@ -247,6 +254,10 @@ Subscription <- R6::R6Class( SubscriptionObject[["pp"]] <- self$`pp` } + if (!is.null(self$`allowedFeatures`)) { + SubscriptionObject[["allowedFeatures"]] <- + self$`allowedFeatures`$toSimpleType() + } return(SubscriptionObject) }, @@ -302,6 +313,11 @@ Subscription <- R6::R6Class( if (!is.null(this_object$`pp`)) { self$`pp` <- this_object$`pp` } + if (!is.null(this_object$`allowedFeatures`)) { + `allowedfeatures_object` <- AllowedFeatures$new() + `allowedfeatures_object`$fromJSON(jsonlite::toJSON(this_object$`allowedFeatures`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`allowedFeatures` <- `allowedfeatures_object` + } self }, @@ -338,6 +354,7 @@ Subscription <- R6::R6Class( self$`name` <- this_object$`name` self$`tos` <- this_object$`tos` self$`pp` <- this_object$`pp` + self$`allowedFeatures` <- AllowedFeatures$new()$fromJSON(jsonlite::toJSON(this_object$`allowedFeatures`, auto_unbox = TRUE, digits = NA, null = 'null')) self }, diff --git a/client-api_r/generated/R/tag.R b/client-api_r/generated/R/tag.R new file mode 100644 index 00000000..ad33a8f4 --- /dev/null +++ b/client-api_r/generated/R/tag.R @@ -0,0 +1,194 @@ +#' Create a new Tag +#' +#' @description +#' Tag Class +#' +#' @docType class +#' @title Tag +#' @description Tag Class +#' @format An \code{R6Class} generator object +#' @field tagName Name of the tag as defined by the corresponding TagDefinition Links tag object to their definition. character +#' @field value \link{AnyType} [optional] +#' @importFrom R6 R6Class +#' @importFrom jsonlite fromJSON toJSON +#' @export +Tag <- R6::R6Class( + "Tag", + public = list( + `tagName` = NULL, + `value` = NULL, + + #' @description + #' Initialize a new Tag class. + #' + #' @param tagName Name of the tag as defined by the corresponding TagDefinition Links tag object to their definition. + #' @param value value + #' @param ... Other optional arguments. + initialize = function(`tagName`, `value` = NULL, ...) { + if (!missing(`tagName`)) { + if (!(is.character(`tagName`) && length(`tagName`) == 1)) { + stop(paste("Error! Invalid data for `tagName`. Must be a string:", `tagName`)) + } + self$`tagName` <- `tagName` + } + if (!is.null(`value`)) { + stopifnot(R6::is.R6(`value`)) + self$`value` <- `value` + } + }, + + #' @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 Tag as a base R list. + #' @examples + #' # convert array of Tag (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 Tag to a base R type + #' + #' @return A base R type, e.g. a list or numeric/character array. + toSimpleType = function() { + TagObject <- list() + if (!is.null(self$`tagName`)) { + TagObject[["tagName"]] <- + self$`tagName` + } + if (!is.null(self$`value`)) { + TagObject[["value"]] <- + self$`value`$toSimpleType() + } + return(TagObject) + }, + + #' @description + #' Deserialize JSON string into an instance of Tag + #' + #' @param input_json the JSON input + #' @return the instance of Tag + fromJSON = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`tagName`)) { + self$`tagName` <- this_object$`tagName` + } + if (!is.null(this_object$`value`)) { + `value_object` <- AnyType$new() + `value_object`$fromJSON(jsonlite::toJSON(this_object$`value`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`value` <- `value_object` + } + self + }, + + #' @description + #' To JSON String + #' + #' @param ... Parameters passed to `jsonlite::toJSON` + #' @return Tag 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 Tag + #' + #' @param input_json the JSON input + #' @return the instance of Tag + fromJSONString = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + self$`tagName` <- this_object$`tagName` + self$`value` <- AnyType$new()$fromJSON(jsonlite::toJSON(this_object$`value`, auto_unbox = TRUE, digits = NA, null = 'null')) + self + }, + + #' @description + #' Validate JSON input with respect to Tag and throw an exception if invalid + #' + #' @param input the JSON input + validateJSON = function(input) { + input_json <- jsonlite::fromJSON(input) + # check the required field `tagName` + if (!is.null(input_json$`tagName`)) { + if (!(is.character(input_json$`tagName`) && length(input_json$`tagName`) == 1)) { + stop(paste("Error! Invalid data for `tagName`. Must be a string:", input_json$`tagName`)) + } + } else { + stop(paste("The JSON input `", input, "` is invalid for Tag: the required field `tagName` is missing.")) + } + }, + + #' @description + #' To string (JSON format) + #' + #' @return String representation of Tag + 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() { + # check if the required `tagName` is null + if (is.null(self$`tagName`)) { + return(FALSE) + } + + TRUE + }, + + #' @description + #' Return a list of invalid fields (if any). + #' + #' @return A list of invalid fields (if any). + getInvalidFields = function() { + invalid_fields <- list() + # check if the required `tagName` is null + if (is.null(self$`tagName`)) { + invalid_fields["tagName"] <- "Non-nullable required field `tagName` cannot be null." + } + + 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 +# Tag$unlock() +# +## Below is an example to define the print function +# Tag$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 +# Tag$lock() + diff --git a/client-api_r/generated/R/tag_definition.R b/client-api_r/generated/R/tag_definition.R new file mode 100644 index 00000000..9ebd0803 --- /dev/null +++ b/client-api_r/generated/R/tag_definition.R @@ -0,0 +1,322 @@ +#' Create a new TagDefinition +#' +#' @description +#' TagDefinition Class +#' +#' @docType class +#' @title TagDefinition +#' @description TagDefinition Class +#' @format An \code{R6Class} generator object +#' @field tagName Name of this tag defined by this definition (key) character +#' @field description A human-readable description about the purpose of this tag. character [optional] +#' @field tagType A simple string based identifier to specify the type/scope/purpose of this tag. character [optional] +#' @field valueType character +#' @field possibleValues list(\link{AnyType}) [optional] +#' @field minValue \link{AnyType} [optional] +#' @field maxValue \link{AnyType} [optional] +#' @field editable character [optional] +#' @importFrom R6 R6Class +#' @importFrom jsonlite fromJSON toJSON +#' @export +TagDefinition <- R6::R6Class( + "TagDefinition", + public = list( + `tagName` = NULL, + `description` = NULL, + `tagType` = NULL, + `valueType` = NULL, + `possibleValues` = NULL, + `minValue` = NULL, + `maxValue` = NULL, + `editable` = NULL, + + #' @description + #' Initialize a new TagDefinition class. + #' + #' @param tagName Name of this tag defined by this definition (key) + #' @param valueType valueType + #' @param description A human-readable description about the purpose of this tag. + #' @param tagType A simple string based identifier to specify the type/scope/purpose of this tag. + #' @param possibleValues possibleValues + #' @param minValue minValue + #' @param maxValue maxValue + #' @param editable editable + #' @param ... Other optional arguments. + initialize = function(`tagName`, `valueType`, `description` = NULL, `tagType` = NULL, `possibleValues` = NULL, `minValue` = NULL, `maxValue` = NULL, `editable` = NULL, ...) { + if (!missing(`tagName`)) { + if (!(is.character(`tagName`) && length(`tagName`) == 1)) { + stop(paste("Error! Invalid data for `tagName`. Must be a string:", `tagName`)) + } + self$`tagName` <- `tagName` + } + if (!missing(`valueType`)) { + if (!(`valueType` %in% c("NONE", "BOOLEAN", "INTEGER", "REAL", "TEXT", "DATE", "TIME"))) { + stop(paste("Error! \"", `valueType`, "\" cannot be assigned to `valueType`. Must be \"NONE\", \"BOOLEAN\", \"INTEGER\", \"REAL\", \"TEXT\", \"DATE\", \"TIME\".", sep = "")) + } + if (!(is.character(`valueType`) && length(`valueType`) == 1)) { + stop(paste("Error! Invalid data for `valueType`. Must be a string:", `valueType`)) + } + self$`valueType` <- `valueType` + } + if (!is.null(`description`)) { + if (!(is.character(`description`) && length(`description`) == 1)) { + stop(paste("Error! Invalid data for `description`. Must be a string:", `description`)) + } + self$`description` <- `description` + } + if (!is.null(`tagType`)) { + if (!(is.character(`tagType`) && length(`tagType`) == 1)) { + stop(paste("Error! Invalid data for `tagType`. Must be a string:", `tagType`)) + } + self$`tagType` <- `tagType` + } + if (!is.null(`possibleValues`)) { + stopifnot(is.vector(`possibleValues`), length(`possibleValues`) != 0) + sapply(`possibleValues`, function(x) stopifnot(R6::is.R6(x))) + self$`possibleValues` <- `possibleValues` + } + if (!is.null(`minValue`)) { + stopifnot(R6::is.R6(`minValue`)) + self$`minValue` <- `minValue` + } + if (!is.null(`maxValue`)) { + stopifnot(R6::is.R6(`maxValue`)) + self$`maxValue` <- `maxValue` + } + if (!is.null(`editable`)) { + if (!(is.logical(`editable`) && length(`editable`) == 1)) { + stop(paste("Error! Invalid data for `editable`. Must be a boolean:", `editable`)) + } + self$`editable` <- `editable` + } + }, + + #' @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 TagDefinition as a base R list. + #' @examples + #' # convert array of TagDefinition (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 TagDefinition to a base R type + #' + #' @return A base R type, e.g. a list or numeric/character array. + toSimpleType = function() { + TagDefinitionObject <- list() + if (!is.null(self$`tagName`)) { + TagDefinitionObject[["tagName"]] <- + self$`tagName` + } + if (!is.null(self$`description`)) { + TagDefinitionObject[["description"]] <- + self$`description` + } + if (!is.null(self$`tagType`)) { + TagDefinitionObject[["tagType"]] <- + self$`tagType` + } + if (!is.null(self$`valueType`)) { + TagDefinitionObject[["valueType"]] <- + self$`valueType` + } + if (!is.null(self$`possibleValues`)) { + TagDefinitionObject[["possibleValues"]] <- + lapply(self$`possibleValues`, function(x) x$toSimpleType()) + } + if (!is.null(self$`minValue`)) { + TagDefinitionObject[["minValue"]] <- + self$`minValue`$toSimpleType() + } + if (!is.null(self$`maxValue`)) { + TagDefinitionObject[["maxValue"]] <- + self$`maxValue`$toSimpleType() + } + if (!is.null(self$`editable`)) { + TagDefinitionObject[["editable"]] <- + self$`editable` + } + return(TagDefinitionObject) + }, + + #' @description + #' Deserialize JSON string into an instance of TagDefinition + #' + #' @param input_json the JSON input + #' @return the instance of TagDefinition + fromJSON = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`tagName`)) { + self$`tagName` <- this_object$`tagName` + } + if (!is.null(this_object$`description`)) { + self$`description` <- this_object$`description` + } + if (!is.null(this_object$`tagType`)) { + self$`tagType` <- this_object$`tagType` + } + if (!is.null(this_object$`valueType`)) { + if (!is.null(this_object$`valueType`) && !(this_object$`valueType` %in% c("NONE", "BOOLEAN", "INTEGER", "REAL", "TEXT", "DATE", "TIME"))) { + stop(paste("Error! \"", this_object$`valueType`, "\" cannot be assigned to `valueType`. Must be \"NONE\", \"BOOLEAN\", \"INTEGER\", \"REAL\", \"TEXT\", \"DATE\", \"TIME\".", sep = "")) + } + self$`valueType` <- this_object$`valueType` + } + if (!is.null(this_object$`possibleValues`)) { + self$`possibleValues` <- ApiClient$new()$deserializeObj(this_object$`possibleValues`, "array[AnyType]", loadNamespace("Rsirius")) + } + if (!is.null(this_object$`minValue`)) { + `minvalue_object` <- AnyType$new() + `minvalue_object`$fromJSON(jsonlite::toJSON(this_object$`minValue`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`minValue` <- `minvalue_object` + } + if (!is.null(this_object$`maxValue`)) { + `maxvalue_object` <- AnyType$new() + `maxvalue_object`$fromJSON(jsonlite::toJSON(this_object$`maxValue`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`maxValue` <- `maxvalue_object` + } + if (!is.null(this_object$`editable`)) { + self$`editable` <- this_object$`editable` + } + self + }, + + #' @description + #' To JSON String + #' + #' @param ... Parameters passed to `jsonlite::toJSON` + #' @return TagDefinition 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 TagDefinition + #' + #' @param input_json the JSON input + #' @return the instance of TagDefinition + fromJSONString = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + self$`tagName` <- this_object$`tagName` + self$`description` <- this_object$`description` + self$`tagType` <- this_object$`tagType` + if (!is.null(this_object$`valueType`) && !(this_object$`valueType` %in% c("NONE", "BOOLEAN", "INTEGER", "REAL", "TEXT", "DATE", "TIME"))) { + stop(paste("Error! \"", this_object$`valueType`, "\" cannot be assigned to `valueType`. Must be \"NONE\", \"BOOLEAN\", \"INTEGER\", \"REAL\", \"TEXT\", \"DATE\", \"TIME\".", sep = "")) + } + self$`valueType` <- this_object$`valueType` + self$`possibleValues` <- ApiClient$new()$deserializeObj(this_object$`possibleValues`, "array[AnyType]", loadNamespace("Rsirius")) + self$`minValue` <- AnyType$new()$fromJSON(jsonlite::toJSON(this_object$`minValue`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`maxValue` <- AnyType$new()$fromJSON(jsonlite::toJSON(this_object$`maxValue`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`editable` <- this_object$`editable` + self + }, + + #' @description + #' Validate JSON input with respect to TagDefinition and throw an exception if invalid + #' + #' @param input the JSON input + validateJSON = function(input) { + input_json <- jsonlite::fromJSON(input) + # check the required field `tagName` + if (!is.null(input_json$`tagName`)) { + if (!(is.character(input_json$`tagName`) && length(input_json$`tagName`) == 1)) { + stop(paste("Error! Invalid data for `tagName`. Must be a string:", input_json$`tagName`)) + } + } else { + stop(paste("The JSON input `", input, "` is invalid for TagDefinition: the required field `tagName` is missing.")) + } + # check the required field `valueType` + if (!is.null(input_json$`valueType`)) { + if (!(is.character(input_json$`valueType`) && length(input_json$`valueType`) == 1)) { + stop(paste("Error! Invalid data for `valueType`. Must be a string:", input_json$`valueType`)) + } + } else { + stop(paste("The JSON input `", input, "` is invalid for TagDefinition: the required field `valueType` is missing.")) + } + }, + + #' @description + #' To string (JSON format) + #' + #' @return String representation of TagDefinition + 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() { + # check if the required `tagName` is null + if (is.null(self$`tagName`)) { + return(FALSE) + } + + # check if the required `valueType` is null + if (is.null(self$`valueType`)) { + return(FALSE) + } + + TRUE + }, + + #' @description + #' Return a list of invalid fields (if any). + #' + #' @return A list of invalid fields (if any). + getInvalidFields = function() { + invalid_fields <- list() + # check if the required `tagName` is null + if (is.null(self$`tagName`)) { + invalid_fields["tagName"] <- "Non-nullable required field `tagName` cannot be null." + } + + # check if the required `valueType` is null + if (is.null(self$`valueType`)) { + invalid_fields["valueType"] <- "Non-nullable required field `valueType` cannot be null." + } + + 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 +# TagDefinition$unlock() +# +## Below is an example to define the print function +# TagDefinition$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 +# TagDefinition$lock() + diff --git a/client-api_r/generated/R/tag_definition_import.R b/client-api_r/generated/R/tag_definition_import.R new file mode 100644 index 00000000..74880765 --- /dev/null +++ b/client-api_r/generated/R/tag_definition_import.R @@ -0,0 +1,305 @@ +#' Create a new TagDefinitionImport +#' +#' @description +#' TagDefinitionImport Class +#' +#' @docType class +#' @title TagDefinitionImport +#' @description TagDefinitionImport Class +#' @format An \code{R6Class} generator object +#' @field tagName Name of this tag defined by this definition (key) character +#' @field description A human-readable description about the purpose of this tag. character [optional] +#' @field tagType A simple string based identifier to specify the type/scope/purpose of this tag. character [optional] +#' @field valueType character +#' @field possibleValues list(\link{AnyType}) [optional] +#' @field minValue \link{AnyType} [optional] +#' @field maxValue \link{AnyType} [optional] +#' @importFrom R6 R6Class +#' @importFrom jsonlite fromJSON toJSON +#' @export +TagDefinitionImport <- R6::R6Class( + "TagDefinitionImport", + public = list( + `tagName` = NULL, + `description` = NULL, + `tagType` = NULL, + `valueType` = NULL, + `possibleValues` = NULL, + `minValue` = NULL, + `maxValue` = NULL, + + #' @description + #' Initialize a new TagDefinitionImport class. + #' + #' @param tagName Name of this tag defined by this definition (key) + #' @param valueType valueType + #' @param description A human-readable description about the purpose of this tag. + #' @param tagType A simple string based identifier to specify the type/scope/purpose of this tag. + #' @param possibleValues possibleValues + #' @param minValue minValue + #' @param maxValue maxValue + #' @param ... Other optional arguments. + initialize = function(`tagName`, `valueType`, `description` = NULL, `tagType` = NULL, `possibleValues` = NULL, `minValue` = NULL, `maxValue` = NULL, ...) { + if (!missing(`tagName`)) { + if (!(is.character(`tagName`) && length(`tagName`) == 1)) { + stop(paste("Error! Invalid data for `tagName`. Must be a string:", `tagName`)) + } + self$`tagName` <- `tagName` + } + if (!missing(`valueType`)) { + if (!(`valueType` %in% c("NONE", "BOOLEAN", "INTEGER", "REAL", "TEXT", "DATE", "TIME"))) { + stop(paste("Error! \"", `valueType`, "\" cannot be assigned to `valueType`. Must be \"NONE\", \"BOOLEAN\", \"INTEGER\", \"REAL\", \"TEXT\", \"DATE\", \"TIME\".", sep = "")) + } + if (!(is.character(`valueType`) && length(`valueType`) == 1)) { + stop(paste("Error! Invalid data for `valueType`. Must be a string:", `valueType`)) + } + self$`valueType` <- `valueType` + } + if (!is.null(`description`)) { + if (!(is.character(`description`) && length(`description`) == 1)) { + stop(paste("Error! Invalid data for `description`. Must be a string:", `description`)) + } + self$`description` <- `description` + } + if (!is.null(`tagType`)) { + if (!(is.character(`tagType`) && length(`tagType`) == 1)) { + stop(paste("Error! Invalid data for `tagType`. Must be a string:", `tagType`)) + } + self$`tagType` <- `tagType` + } + if (!is.null(`possibleValues`)) { + stopifnot(is.vector(`possibleValues`), length(`possibleValues`) != 0) + sapply(`possibleValues`, function(x) stopifnot(R6::is.R6(x))) + self$`possibleValues` <- `possibleValues` + } + if (!is.null(`minValue`)) { + stopifnot(R6::is.R6(`minValue`)) + self$`minValue` <- `minValue` + } + if (!is.null(`maxValue`)) { + stopifnot(R6::is.R6(`maxValue`)) + self$`maxValue` <- `maxValue` + } + }, + + #' @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 TagDefinitionImport as a base R list. + #' @examples + #' # convert array of TagDefinitionImport (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 TagDefinitionImport to a base R type + #' + #' @return A base R type, e.g. a list or numeric/character array. + toSimpleType = function() { + TagDefinitionImportObject <- list() + if (!is.null(self$`tagName`)) { + TagDefinitionImportObject[["tagName"]] <- + self$`tagName` + } + if (!is.null(self$`description`)) { + TagDefinitionImportObject[["description"]] <- + self$`description` + } + if (!is.null(self$`tagType`)) { + TagDefinitionImportObject[["tagType"]] <- + self$`tagType` + } + if (!is.null(self$`valueType`)) { + TagDefinitionImportObject[["valueType"]] <- + self$`valueType` + } + if (!is.null(self$`possibleValues`)) { + TagDefinitionImportObject[["possibleValues"]] <- + lapply(self$`possibleValues`, function(x) x$toSimpleType()) + } + if (!is.null(self$`minValue`)) { + TagDefinitionImportObject[["minValue"]] <- + self$`minValue`$toSimpleType() + } + if (!is.null(self$`maxValue`)) { + TagDefinitionImportObject[["maxValue"]] <- + self$`maxValue`$toSimpleType() + } + return(TagDefinitionImportObject) + }, + + #' @description + #' Deserialize JSON string into an instance of TagDefinitionImport + #' + #' @param input_json the JSON input + #' @return the instance of TagDefinitionImport + fromJSON = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`tagName`)) { + self$`tagName` <- this_object$`tagName` + } + if (!is.null(this_object$`description`)) { + self$`description` <- this_object$`description` + } + if (!is.null(this_object$`tagType`)) { + self$`tagType` <- this_object$`tagType` + } + if (!is.null(this_object$`valueType`)) { + if (!is.null(this_object$`valueType`) && !(this_object$`valueType` %in% c("NONE", "BOOLEAN", "INTEGER", "REAL", "TEXT", "DATE", "TIME"))) { + stop(paste("Error! \"", this_object$`valueType`, "\" cannot be assigned to `valueType`. Must be \"NONE\", \"BOOLEAN\", \"INTEGER\", \"REAL\", \"TEXT\", \"DATE\", \"TIME\".", sep = "")) + } + self$`valueType` <- this_object$`valueType` + } + if (!is.null(this_object$`possibleValues`)) { + self$`possibleValues` <- ApiClient$new()$deserializeObj(this_object$`possibleValues`, "array[AnyType]", loadNamespace("Rsirius")) + } + if (!is.null(this_object$`minValue`)) { + `minvalue_object` <- AnyType$new() + `minvalue_object`$fromJSON(jsonlite::toJSON(this_object$`minValue`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`minValue` <- `minvalue_object` + } + if (!is.null(this_object$`maxValue`)) { + `maxvalue_object` <- AnyType$new() + `maxvalue_object`$fromJSON(jsonlite::toJSON(this_object$`maxValue`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`maxValue` <- `maxvalue_object` + } + self + }, + + #' @description + #' To JSON String + #' + #' @param ... Parameters passed to `jsonlite::toJSON` + #' @return TagDefinitionImport 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 TagDefinitionImport + #' + #' @param input_json the JSON input + #' @return the instance of TagDefinitionImport + fromJSONString = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + self$`tagName` <- this_object$`tagName` + self$`description` <- this_object$`description` + self$`tagType` <- this_object$`tagType` + if (!is.null(this_object$`valueType`) && !(this_object$`valueType` %in% c("NONE", "BOOLEAN", "INTEGER", "REAL", "TEXT", "DATE", "TIME"))) { + stop(paste("Error! \"", this_object$`valueType`, "\" cannot be assigned to `valueType`. Must be \"NONE\", \"BOOLEAN\", \"INTEGER\", \"REAL\", \"TEXT\", \"DATE\", \"TIME\".", sep = "")) + } + self$`valueType` <- this_object$`valueType` + self$`possibleValues` <- ApiClient$new()$deserializeObj(this_object$`possibleValues`, "array[AnyType]", loadNamespace("Rsirius")) + self$`minValue` <- AnyType$new()$fromJSON(jsonlite::toJSON(this_object$`minValue`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`maxValue` <- AnyType$new()$fromJSON(jsonlite::toJSON(this_object$`maxValue`, auto_unbox = TRUE, digits = NA, null = 'null')) + self + }, + + #' @description + #' Validate JSON input with respect to TagDefinitionImport and throw an exception if invalid + #' + #' @param input the JSON input + validateJSON = function(input) { + input_json <- jsonlite::fromJSON(input) + # check the required field `tagName` + if (!is.null(input_json$`tagName`)) { + if (!(is.character(input_json$`tagName`) && length(input_json$`tagName`) == 1)) { + stop(paste("Error! Invalid data for `tagName`. Must be a string:", input_json$`tagName`)) + } + } else { + stop(paste("The JSON input `", input, "` is invalid for TagDefinitionImport: the required field `tagName` is missing.")) + } + # check the required field `valueType` + if (!is.null(input_json$`valueType`)) { + if (!(is.character(input_json$`valueType`) && length(input_json$`valueType`) == 1)) { + stop(paste("Error! Invalid data for `valueType`. Must be a string:", input_json$`valueType`)) + } + } else { + stop(paste("The JSON input `", input, "` is invalid for TagDefinitionImport: the required field `valueType` is missing.")) + } + }, + + #' @description + #' To string (JSON format) + #' + #' @return String representation of TagDefinitionImport + 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() { + # check if the required `tagName` is null + if (is.null(self$`tagName`)) { + return(FALSE) + } + + # check if the required `valueType` is null + if (is.null(self$`valueType`)) { + return(FALSE) + } + + TRUE + }, + + #' @description + #' Return a list of invalid fields (if any). + #' + #' @return A list of invalid fields (if any). + getInvalidFields = function() { + invalid_fields <- list() + # check if the required `tagName` is null + if (is.null(self$`tagName`)) { + invalid_fields["tagName"] <- "Non-nullable required field `tagName` cannot be null." + } + + # check if the required `valueType` is null + if (is.null(self$`valueType`)) { + invalid_fields["valueType"] <- "Non-nullable required field `valueType` cannot be null." + } + + 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 +# TagDefinitionImport$unlock() +# +## Below is an example to define the print function +# TagDefinitionImport$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 +# TagDefinitionImport$lock() + diff --git a/client-api_r/generated/R/tag_group.R b/client-api_r/generated/R/tag_group.R new file mode 100644 index 00000000..a2120318 --- /dev/null +++ b/client-api_r/generated/R/tag_group.R @@ -0,0 +1,193 @@ +#' Create a new TagGroup +#' +#' @description +#' TagGroup Class +#' +#' @docType class +#' @title TagGroup +#' @description TagGroup Class +#' @format An \code{R6Class} generator object +#' @field groupName Name of this Grouping query. character [optional] +#' @field luceneQuery Query used to group the entities in lucene format. character [optional] +#' @field groupType character [optional] +#' @importFrom R6 R6Class +#' @importFrom jsonlite fromJSON toJSON +#' @export +TagGroup <- R6::R6Class( + "TagGroup", + public = list( + `groupName` = NULL, + `luceneQuery` = NULL, + `groupType` = NULL, + + #' @description + #' Initialize a new TagGroup class. + #' + #' @param groupName Name of this Grouping query. + #' @param luceneQuery Query used to group the entities in lucene format. + #' @param groupType groupType + #' @param ... Other optional arguments. + initialize = function(`groupName` = NULL, `luceneQuery` = NULL, `groupType` = NULL, ...) { + if (!is.null(`groupName`)) { + if (!(is.character(`groupName`) && length(`groupName`) == 1)) { + stop(paste("Error! Invalid data for `groupName`. Must be a string:", `groupName`)) + } + self$`groupName` <- `groupName` + } + if (!is.null(`luceneQuery`)) { + if (!(is.character(`luceneQuery`) && length(`luceneQuery`) == 1)) { + stop(paste("Error! Invalid data for `luceneQuery`. Must be a string:", `luceneQuery`)) + } + self$`luceneQuery` <- `luceneQuery` + } + if (!is.null(`groupType`)) { + if (!(is.character(`groupType`) && length(`groupType`) == 1)) { + stop(paste("Error! Invalid data for `groupType`. Must be a string:", `groupType`)) + } + self$`groupType` <- `groupType` + } + }, + + #' @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 TagGroup as a base R list. + #' @examples + #' # convert array of TagGroup (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 TagGroup to a base R type + #' + #' @return A base R type, e.g. a list or numeric/character array. + toSimpleType = function() { + TagGroupObject <- list() + if (!is.null(self$`groupName`)) { + TagGroupObject[["groupName"]] <- + self$`groupName` + } + if (!is.null(self$`luceneQuery`)) { + TagGroupObject[["luceneQuery"]] <- + self$`luceneQuery` + } + if (!is.null(self$`groupType`)) { + TagGroupObject[["groupType"]] <- + self$`groupType` + } + return(TagGroupObject) + }, + + #' @description + #' Deserialize JSON string into an instance of TagGroup + #' + #' @param input_json the JSON input + #' @return the instance of TagGroup + fromJSON = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`groupName`)) { + self$`groupName` <- this_object$`groupName` + } + if (!is.null(this_object$`luceneQuery`)) { + self$`luceneQuery` <- this_object$`luceneQuery` + } + if (!is.null(this_object$`groupType`)) { + self$`groupType` <- this_object$`groupType` + } + self + }, + + #' @description + #' To JSON String + #' + #' @param ... Parameters passed to `jsonlite::toJSON` + #' @return TagGroup 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 TagGroup + #' + #' @param input_json the JSON input + #' @return the instance of TagGroup + fromJSONString = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + self$`groupName` <- this_object$`groupName` + self$`luceneQuery` <- this_object$`luceneQuery` + self$`groupType` <- this_object$`groupType` + self + }, + + #' @description + #' Validate JSON input with respect to TagGroup 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 TagGroup + 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 +# TagGroup$unlock() +# +## Below is an example to define the print function +# TagGroup$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 +# TagGroup$lock() + diff --git a/client-api_r/generated/R/tags_api.R b/client-api_r/generated/R/tags_api.R new file mode 100644 index 00000000..5f81f9c1 --- /dev/null +++ b/client-api_r/generated/R/tags_api.R @@ -0,0 +1,1124 @@ +#' 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 Tags operations +#' @description TagsApi +#' @format An \code{R6Class} generator object +#' @field api_client Handles the client-server communication. +#' +#' @examples +#' \dontrun{ +#' #################### AddGroup #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to add to. +#' var_group_name <- "group_name_example" # character | name of the new group +#' var_filter <- "filter_example" # character | filter query to create the group +#' var_type <- "type_example" # character | type of the group +#' +#' #[EXPERIMENTAL] Group tags in the project +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$AddGroup(var_project_id, var_group_name, var_filter, var_typedata_file = "result.txt") +#' result <- api_instance$tags_api$AddGroup(var_project_id, var_group_name, var_filter, var_type) +#' dput(result) +#' +#' +#' #################### AddPossibleValuesToTagDefinition #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to add to. +#' var_tag_name <- "tag_name_example" # character | the tag definition to add the values to +#' var_request_body <- c(TODO) # array[AnyType] | +#' +#' #[EXPERIMENTAL] Add a possible value to the tag definition in the project +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$AddPossibleValuesToTagDefinition(var_project_id, var_tag_name, var_request_bodydata_file = "result.txt") +#' result <- api_instance$tags_api$AddPossibleValuesToTagDefinition(var_project_id, var_tag_name, var_request_body) +#' dput(result) +#' +#' +#' #################### CreateTags #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to add to. +#' var_tag_definition_import <- c(TagDefinitionImport$new("tagName_example", "NONE", "description_example", "tagType_example", c(TODO), TODO, TODO)) # array[TagDefinitionImport] | the tag definitions to be created +#' +#' #[EXPERIMENTAL] Add tags to the project +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$CreateTags(var_project_id, var_tag_definition_importdata_file = "result.txt") +#' result <- api_instance$tags_api$CreateTags(var_project_id, var_tag_definition_import) +#' dput(result) +#' +#' +#' #################### DeleteGroup #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to delete from. +#' var_group_name <- "group_name_example" # character | name of group to delete. +#' +#' #[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space +#' api_instance <- rsirius_api$new() +#' +#' api_instance$tags_api$DeleteGroup(var_project_id, var_group_name) +#' +#' +#' #################### DeleteTag #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to delete from. +#' var_tag_name <- "tag_name_example" # character | name of the tag definition to delete. +#' +#' #[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space +#' api_instance <- rsirius_api$new() +#' +#' api_instance$tags_api$DeleteTag(var_project_id, var_tag_name) +#' +#' +#' #################### GetGroupByName #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to read from. +#' var_group_name <- "group_name_example" # character | name of the group +#' +#' #[EXPERIMENTAL] Get tag group by name in the given project-space +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetGroupByName(var_project_id, var_group_namedata_file = "result.txt") +#' result <- api_instance$tags_api$GetGroupByName(var_project_id, var_group_name) +#' dput(result) +#' +#' +#' #################### GetGroups #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to read from. +#' var_group_type <- "group_type_example" # character | type of the group (Optional) +#' +#' #[EXPERIMENTAL] Get all tag based groups in the given project-space +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetGroups(var_project_id, group_type = var_group_typedata_file = "result.txt") +#' result <- api_instance$tags_api$GetGroups(var_project_id, group_type = var_group_type) +#' dput(result) +#' +#' +#' #################### GetTag #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to read from. +#' var_tag_name <- "tag_name_example" # character | name of the tag +#' +#' #[EXPERIMENTAL] Get tag definition by its name in the given project-space +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetTag(var_project_id, var_tag_namedata_file = "result.txt") +#' result <- api_instance$tags_api$GetTag(var_project_id, var_tag_name) +#' dput(result) +#' +#' +#' #################### GetTags #################### +#' +#' library(Rsirius) +#' var_project_id <- "project_id_example" # character | project-space to read from. +#' var_tag_type <- "tag_type_example" # character | scope of the tag (optional) (Optional) +#' +#' #[EXPERIMENTAL] Get all tag definitions in the given project-space +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetTags(var_project_id, tag_type = var_tag_typedata_file = "result.txt") +#' result <- api_instance$tags_api$GetTags(var_project_id, tag_type = var_tag_type) +#' dput(result) +#' +#' +#' } +#' @importFrom R6 R6Class +#' @importFrom base64enc base64encode +#' @export +TagsApi <- R6::R6Class( + "TagsApi", + public = list( + api_client = NULL, + + #' @description + #' Initialize a new TagsApi. + #' + #' @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 + #' [EXPERIMENTAL] Group tags in the project + #' + #' @param project_id project-space to add to. + #' @param group_name name of the new group + #' @param filter filter query to create the group + #' @param type type of the group + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return TagGroup + AddGroup = function(project_id, group_name, filter, type, data_file = NULL, ...) { + local_var_response <- self$AddGroupWithHttpInfo(project_id, group_name, filter, type, 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 + #' [EXPERIMENTAL] Group tags in the project + #' + #' @param project_id project-space to add to. + #' @param group_name name of the new group + #' @param filter filter query to create the group + #' @param type type of the group + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (TagGroup) with additional information such as HTTP status code, headers + AddGroupWithHttpInfo = function(project_id, group_name, filter, type, 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`.") + } + + if (missing(`group_name`)) { + stop("Missing required parameter `group_name`.") + } + + if (missing(`filter`)) { + stop("Missing required parameter `filter`.") + } + + if (missing(`type`)) { + stop("Missing required parameter `type`.") + } + + + + + + query_params[["filter"]] <- `filter` + + query_params[["type"]] <- `type` + + local_var_url_path <- "/api/projects/{projectId}/groups/{groupName}" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`group_name`)) { + local_var_url_path <- gsub("\\{groupName\\}", URLencode(as.character(`group_name`), 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 = "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) { + # save response in a file + if (!is.null(data_file)) { + write(local_var_resp$response, data_file) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "TagGroup", 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 + #' [EXPERIMENTAL] Add a possible value to the tag definition in the project + #' + #' @param project_id project-space to add to. + #' @param tag_name the tag definition to add the values to + #' @param request_body + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return TagDefinition + AddPossibleValuesToTagDefinition = function(project_id, tag_name, request_body, data_file = NULL, ...) { + local_var_response <- self$AddPossibleValuesToTagDefinitionWithHttpInfo(project_id, tag_name, request_body, 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 + #' [EXPERIMENTAL] Add a possible value to the tag definition in the project + #' + #' @param project_id project-space to add to. + #' @param tag_name the tag definition to add the values to + #' @param request_body + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (TagDefinition) with additional information such as HTTP status code, headers + AddPossibleValuesToTagDefinitionWithHttpInfo = function(project_id, tag_name, request_body, 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`.") + } + + if (missing(`tag_name`)) { + stop("Missing required parameter `tag_name`.") + } + + if (missing(`request_body`)) { + stop("Missing required parameter `request_body`.") + } + + + + + if (!is.null(`request_body`)) { + body.items <- paste(unlist(lapply(`request_body`, function(param) { + param$toJSONString() + })), collapse = ",") + local_var_body <- paste0("[", body.items, "]") + } else { + body <- NULL + } + + local_var_url_path <- "/api/projects/{projectId}/tags/{tagName}" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`tag_name`)) { + local_var_url_path <- gsub("\\{tagName\\}", URLencode(as.character(`tag_name`), 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("application/json") + + local_var_resp <- self$api_client$CallApi(url = paste0(self$api_client$base_path, local_var_url_path), + method = "PATCH", + 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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "TagDefinition", 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 + #' [EXPERIMENTAL] Add tags to the project + #' + #' @param project_id project-space to add to. + #' @param tag_definition_import the tag definitions to be created + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return array[TagDefinition] + CreateTags = function(project_id, tag_definition_import, data_file = NULL, ...) { + local_var_response <- self$CreateTagsWithHttpInfo(project_id, tag_definition_import, 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 + #' [EXPERIMENTAL] Add tags to the project + #' + #' @param project_id project-space to add to. + #' @param tag_definition_import the tag definitions to be created + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (array[TagDefinition]) with additional information such as HTTP status code, headers + CreateTagsWithHttpInfo = function(project_id, tag_definition_import, 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`.") + } + + if (missing(`tag_definition_import`)) { + stop("Missing required parameter `tag_definition_import`.") + } + + + + if (!is.null(`tag_definition_import`)) { + body.items <- paste(unlist(lapply(`tag_definition_import`, function(param) { + param$toJSONString() + })), collapse = ",") + local_var_body <- paste0("[", body.items, "]") + } else { + body <- NULL + } + + local_var_url_path <- "/api/projects/{projectId}/tags" + 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("application/json") + + local_var_resp <- self$api_client$CallApi(url = paste0(self$api_client$base_path, local_var_url_path), + method = "PUT", + 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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "array[TagDefinition]", 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 + #' [EXPERIMENTAL] Delete tag groups with the given name from the specified project-space + #' + #' @param project_id project-space to delete from. + #' @param group_name name of group to delete. + #' @param ... Other optional arguments + #' + #' @return void + DeleteGroup = function(project_id, group_name, ...) { + local_var_response <- self$DeleteGroupWithHttpInfo(project_id, group_name, ...) + 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 + #' [EXPERIMENTAL] Delete tag groups with the given name from the specified project-space + #' + #' @param project_id project-space to delete from. + #' @param group_name name of group to delete. + #' @param ... Other optional arguments + #' + #' @return API response (void) with additional information such as HTTP status code, headers + DeleteGroupWithHttpInfo = function(project_id, group_name, ...) { + 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`.") + } + + if (missing(`group_name`)) { + stop("Missing required parameter `group_name`.") + } + + + + local_var_url_path <- "/api/projects/{projectId}/groups/{groupName}" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`group_name`)) { + local_var_url_path <- gsub("\\{groupName\\}", URLencode(as.character(`group_name`), 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 = "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) { + 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 + } + }, + + #' @description + #' [EXPERIMENTAL] Delete tag definition with the given name from the specified project-space + #' + #' @param project_id project-space to delete from. + #' @param tag_name name of the tag definition to delete. + #' @param ... Other optional arguments + #' + #' @return void + DeleteTag = function(project_id, tag_name, ...) { + local_var_response <- self$DeleteTagWithHttpInfo(project_id, tag_name, ...) + 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 + #' [EXPERIMENTAL] Delete tag definition with the given name from the specified project-space + #' + #' @param project_id project-space to delete from. + #' @param tag_name name of the tag definition to delete. + #' @param ... Other optional arguments + #' + #' @return API response (void) with additional information such as HTTP status code, headers + DeleteTagWithHttpInfo = function(project_id, tag_name, ...) { + 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`.") + } + + if (missing(`tag_name`)) { + stop("Missing required parameter `tag_name`.") + } + + + + local_var_url_path <- "/api/projects/{projectId}/tags/{tagName}" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`tag_name`)) { + local_var_url_path <- gsub("\\{tagName\\}", URLencode(as.character(`tag_name`), 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 = "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) { + 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 + } + }, + + #' @description + #' [EXPERIMENTAL] Get tag group by name in the given project-space + #' + #' @param project_id project-space to read from. + #' @param group_name name of the group + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return TagGroup + GetGroupByName = function(project_id, group_name, data_file = NULL, ...) { + local_var_response <- self$GetGroupByNameWithHttpInfo(project_id, group_name, 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 + #' [EXPERIMENTAL] Get tag group by name in the given project-space + #' + #' @param project_id project-space to read from. + #' @param group_name name of the group + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (TagGroup) with additional information such as HTTP status code, headers + GetGroupByNameWithHttpInfo = function(project_id, group_name, 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`.") + } + + if (missing(`group_name`)) { + stop("Missing required parameter `group_name`.") + } + + + + local_var_url_path <- "/api/projects/{projectId}/groups/{groupName}" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`group_name`)) { + local_var_url_path <- gsub("\\{groupName\\}", URLencode(as.character(`group_name`), 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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "TagGroup", 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 + #' [EXPERIMENTAL] Get all tag based groups in the given project-space + #' + #' @param project_id project-space to read from. + #' @param group_type (optional) type of the group + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return array[TagGroup] + GetGroups = function(project_id, group_type = NULL, data_file = NULL, ...) { + local_var_response <- self$GetGroupsWithHttpInfo(project_id, group_type, 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 + #' [EXPERIMENTAL] Get all tag based groups in the given project-space + #' + #' @param project_id project-space to read from. + #' @param group_type (optional) type of the group + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (array[TagGroup]) with additional information such as HTTP status code, headers + GetGroupsWithHttpInfo = function(project_id, group_type = 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[["groupType"]] <- `group_type` + + local_var_url_path <- "/api/projects/{projectId}/groups" + 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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "array[TagGroup]", 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 + #' [EXPERIMENTAL] Get tag definition by its name in the given project-space + #' + #' @param project_id project-space to read from. + #' @param tag_name name of the tag + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return TagDefinition + GetTag = function(project_id, tag_name, data_file = NULL, ...) { + local_var_response <- self$GetTagWithHttpInfo(project_id, tag_name, 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 + #' [EXPERIMENTAL] Get tag definition by its name in the given project-space + #' + #' @param project_id project-space to read from. + #' @param tag_name name of the tag + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (TagDefinition) with additional information such as HTTP status code, headers + GetTagWithHttpInfo = function(project_id, tag_name, 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`.") + } + + if (missing(`tag_name`)) { + stop("Missing required parameter `tag_name`.") + } + + + + local_var_url_path <- "/api/projects/{projectId}/tags/{tagName}" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + if (!missing(`tag_name`)) { + local_var_url_path <- gsub("\\{tagName\\}", URLencode(as.character(`tag_name`), 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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "TagDefinition", 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 + #' [EXPERIMENTAL] Get all tag definitions in the given project-space + #' + #' @param project_id project-space to read from. + #' @param tag_type (optional) scope of the tag (optional) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return array[TagDefinition] + GetTags = function(project_id, tag_type = NULL, data_file = NULL, ...) { + local_var_response <- self$GetTagsWithHttpInfo(project_id, tag_type, 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 + #' [EXPERIMENTAL] Get all tag definitions in the given project-space + #' + #' @param project_id project-space to read from. + #' @param tag_type (optional) scope of the tag (optional) + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (array[TagDefinition]) with additional information such as HTTP status code, headers + GetTagsWithHttpInfo = function(project_id, tag_type = 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[["tagType"]] <- `tag_type` + + local_var_url_path <- "/api/projects/{projectId}/tags" + 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 = "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) + } + + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "array[TagDefinition]", 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 + } + } + ) +) diff --git a/client-api_r/generated/R/trace_experimental.R b/client-api_r/generated/R/trace_experimental.R index 2b365fff..b42c0be4 100644 --- a/client-api_r/generated/R/trace_experimental.R +++ b/client-api_r/generated/R/trace_experimental.R @@ -11,6 +11,7 @@ #' @field sampleId character [optional] #' @field sampleName character [optional] #' @field label character [optional] +#' @field color character [optional] #' @field intensities list(numeric) [optional] #' @field annotations list(\link{TraceAnnotationExperimental}) [optional] #' @field mz numeric [optional] @@ -27,6 +28,7 @@ TraceExperimental <- R6::R6Class( `sampleId` = NULL, `sampleName` = NULL, `label` = NULL, + `color` = NULL, `intensities` = NULL, `annotations` = NULL, `mz` = NULL, @@ -41,6 +43,7 @@ TraceExperimental <- R6::R6Class( #' @param sampleId sampleId #' @param sampleName sampleName #' @param label label + #' @param color color #' @param intensities intensities #' @param annotations annotations #' @param mz mz @@ -48,7 +51,7 @@ TraceExperimental <- R6::R6Class( #' @param normalizationFactor Traces are stored with raw intensity values. The normalization factor maps them to relative intensities, such that traces from different samples can be compared. #' @param noiseLevel The noise level is estimated from the median noise in the surrounding scans. It can be used to calculate signal-to-noise ratios. #' @param ... Other optional arguments. - initialize = function(`id` = NULL, `sampleId` = NULL, `sampleName` = NULL, `label` = NULL, `intensities` = NULL, `annotations` = NULL, `mz` = NULL, `merged` = NULL, `normalizationFactor` = NULL, `noiseLevel` = NULL, ...) { + initialize = function(`id` = NULL, `sampleId` = NULL, `sampleName` = NULL, `label` = NULL, `color` = NULL, `intensities` = NULL, `annotations` = NULL, `mz` = NULL, `merged` = NULL, `normalizationFactor` = NULL, `noiseLevel` = NULL, ...) { if (!is.null(`id`)) { if (!(is.character(`id`) && length(`id`) == 1)) { stop(paste("Error! Invalid data for `id`. Must be a string:", `id`)) @@ -73,6 +76,12 @@ TraceExperimental <- R6::R6Class( } self$`label` <- `label` } + if (!is.null(`color`)) { + if (!(is.character(`color`) && length(`color`) == 1)) { + stop(paste("Error! Invalid data for `color`. Must be a string:", `color`)) + } + self$`color` <- `color` + } if (!is.null(`intensities`)) { stopifnot(is.vector(`intensities`), length(`intensities`) != 0) sapply(`intensities`, function(x) stopifnot(is.character(x))) @@ -156,6 +165,10 @@ TraceExperimental <- R6::R6Class( TraceExperimentalObject[["label"]] <- self$`label` } + if (!is.null(self$`color`)) { + TraceExperimentalObject[["color"]] <- + self$`color` + } if (!is.null(self$`intensities`)) { TraceExperimentalObject[["intensities"]] <- self$`intensities` @@ -202,6 +215,9 @@ TraceExperimental <- R6::R6Class( if (!is.null(this_object$`label`)) { self$`label` <- this_object$`label` } + if (!is.null(this_object$`color`)) { + self$`color` <- this_object$`color` + } if (!is.null(this_object$`intensities`)) { self$`intensities` <- ApiClient$new()$deserializeObj(this_object$`intensities`, "array[numeric]", loadNamespace("Rsirius")) } @@ -245,6 +261,7 @@ TraceExperimental <- R6::R6Class( self$`sampleId` <- this_object$`sampleId` self$`sampleName` <- this_object$`sampleName` self$`label` <- this_object$`label` + self$`color` <- this_object$`color` self$`intensities` <- ApiClient$new()$deserializeObj(this_object$`intensities`, "array[numeric]", loadNamespace("Rsirius")) self$`annotations` <- ApiClient$new()$deserializeObj(this_object$`annotations`, "array[TraceAnnotationExperimental]", loadNamespace("Rsirius")) self$`mz` <- this_object$`mz` diff --git a/client-api_r/generated/R/gui_info.R b/client-api_r/generated/R/web_server_namespace.R similarity index 65% rename from client-api_r/generated/R/gui_info.R rename to client-api_r/generated/R/web_server_namespace.R index 1b4259fe..993d97ed 100644 --- a/client-api_r/generated/R/gui_info.R +++ b/client-api_r/generated/R/web_server_namespace.R @@ -1,32 +1,32 @@ -#' Create a new GuiInfo +#' Create a new WebServerNamespace #' #' @description -#' GuiInfo Class +#' WebServerNamespace Class #' #' @docType class -#' @title GuiInfo -#' @description GuiInfo Class +#' @title WebServerNamespace +#' @description WebServerNamespace Class #' @format An \code{R6Class} generator object -#' @field projectId The project this instance is running on character [optional] +#' @field value character [optional] #' @importFrom R6 R6Class #' @importFrom jsonlite fromJSON toJSON #' @export -GuiInfo <- R6::R6Class( - "GuiInfo", +WebServerNamespace <- R6::R6Class( + "WebServerNamespace", public = list( - `projectId` = NULL, + `value` = NULL, #' @description - #' Initialize a new GuiInfo class. + #' Initialize a new WebServerNamespace class. #' - #' @param projectId The project this instance is running on + #' @param value value #' @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`)) + initialize = function(`value` = NULL, ...) { + if (!is.null(`value`)) { + if (!(is.character(`value`) && length(`value`) == 1)) { + stop(paste("Error! Invalid data for `value`. Must be a string:", `value`)) } - self$`projectId` <- `projectId` + self$`value` <- `value` } }, @@ -42,9 +42,9 @@ GuiInfo <- R6::R6Class( #' #' Convert the R6 object to a list to work more easily with other tooling. #' - #' @return GuiInfo as a base R list. + #' @return WebServerNamespace as a base R list. #' @examples - #' # convert array of GuiInfo (x) to a data frame + #' # convert array of WebServerNamespace (x) to a data frame #' \dontrun{ #' library(purrr) #' library(tibble) @@ -56,27 +56,27 @@ GuiInfo <- R6::R6Class( }, #' @description - #' Convert GuiInfo to a base R type + #' Convert WebServerNamespace 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` + WebServerNamespaceObject <- list() + if (!is.null(self$`value`)) { + WebServerNamespaceObject[["value"]] <- + self$`value` } - return(GuiInfoObject) + return(WebServerNamespaceObject) }, #' @description - #' Deserialize JSON string into an instance of GuiInfo + #' Deserialize JSON string into an instance of WebServerNamespace #' #' @param input_json the JSON input - #' @return the instance of GuiInfo + #' @return the instance of WebServerNamespace fromJSON = function(input_json) { this_object <- jsonlite::fromJSON(input_json) - if (!is.null(this_object$`projectId`)) { - self$`projectId` <- this_object$`projectId` + if (!is.null(this_object$`value`)) { + self$`value` <- this_object$`value` } self }, @@ -85,7 +85,7 @@ GuiInfo <- R6::R6Class( #' To JSON String #' #' @param ... Parameters passed to `jsonlite::toJSON` - #' @return GuiInfo in JSON format + #' @return WebServerNamespace in JSON format toJSONString = function(...) { simple <- self$toSimpleType() json <- jsonlite::toJSON(simple, auto_unbox = TRUE, digits = NA, null = 'null', ...) @@ -93,18 +93,18 @@ GuiInfo <- R6::R6Class( }, #' @description - #' Deserialize JSON string into an instance of GuiInfo + #' Deserialize JSON string into an instance of WebServerNamespace #' #' @param input_json the JSON input - #' @return the instance of GuiInfo + #' @return the instance of WebServerNamespace fromJSONString = function(input_json) { this_object <- jsonlite::fromJSON(input_json) - self$`projectId` <- this_object$`projectId` + self$`value` <- this_object$`value` self }, #' @description - #' Validate JSON input with respect to GuiInfo and throw an exception if invalid + #' Validate JSON input with respect to WebServerNamespace and throw an exception if invalid #' #' @param input the JSON input validateJSON = function(input) { @@ -114,7 +114,7 @@ GuiInfo <- R6::R6Class( #' @description #' To string (JSON format) #' - #' @return String representation of GuiInfo + #' @return String representation of WebServerNamespace toString = function() { self$toJSONString() }, @@ -147,13 +147,13 @@ GuiInfo <- R6::R6Class( lock_class = TRUE ) ## Uncomment below to unlock the class to allow modifications of the method or field -# GuiInfo$unlock() +# WebServerNamespace$unlock() # ## Below is an example to define the print function -# GuiInfo$set("public", "print", function(...) { +# WebServerNamespace$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() +# WebServerNamespace$lock() diff --git a/client-api_r/generated/R/zodiac.R b/client-api_r/generated/R/zodiac.R index 91ac0596..8bc2c4f4 100644 --- a/client-api_r/generated/R/zodiac.R +++ b/client-api_r/generated/R/zodiac.R @@ -11,8 +11,10 @@ #' @field consideredCandidatesAt300Mz Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds below 300 m/z. integer [optional] #' @field consideredCandidatesAt800Mz Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds above 800 m/z. integer [optional] #' @field runInTwoSteps As default ZODIAC runs a 2-step approach. First running 'good quality compounds' only, and afterwards including the remaining. character [optional] -#' @field edgeFilterThresholds \link{ZodiacEdgeFilterThresholds} [optional] -#' @field gibbsSamplerParameters \link{ZodiacEpochs} [optional] +#' @field edgeFilterThresholds thresholdFilter = Defines the proportion of edges of the complete network which will be ignored. minLocalConnections = Minimum number of compounds to which at least one candidate per compound must be connected to. \link{ZodiacEdgeFilterThresholds} [optional] +#' @field gibbsSamplerParameters iterations: \"Number of epochs to run the Gibbs sampling. When multiple Markov chains are computed, all chains' iterations sum up to this value.\" burnInPeriod: \"Number of epochs considered as 'burn-in period'. numberOfMarkovChains: Number of separate Gibbs sampling runs. \link{ZodiacEpochs} [optional] +#' @field librarySearchAnchors Configure the use of identity spectral library search results as anchors in ZODIAC network \link{ZodiacLibraryScoring} [optional] +#' @field analogueSearchAnchors Configure the use of analogue spectral library search results as anchors in ZODIAC network \link{ZodiacAnalogueNodes} [optional] #' @importFrom R6 R6Class #' @importFrom jsonlite fromJSON toJSON #' @export @@ -25,6 +27,8 @@ Zodiac <- R6::R6Class( `runInTwoSteps` = NULL, `edgeFilterThresholds` = NULL, `gibbsSamplerParameters` = NULL, + `librarySearchAnchors` = NULL, + `analogueSearchAnchors` = NULL, #' @description #' Initialize a new Zodiac class. @@ -33,10 +37,12 @@ Zodiac <- R6::R6Class( #' @param consideredCandidatesAt300Mz Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds below 300 m/z. #' @param consideredCandidatesAt800Mz Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds above 800 m/z. #' @param runInTwoSteps As default ZODIAC runs a 2-step approach. First running 'good quality compounds' only, and afterwards including the remaining. - #' @param edgeFilterThresholds edgeFilterThresholds - #' @param gibbsSamplerParameters gibbsSamplerParameters + #' @param edgeFilterThresholds thresholdFilter = Defines the proportion of edges of the complete network which will be ignored. minLocalConnections = Minimum number of compounds to which at least one candidate per compound must be connected to. + #' @param gibbsSamplerParameters iterations: \"Number of epochs to run the Gibbs sampling. When multiple Markov chains are computed, all chains' iterations sum up to this value.\" burnInPeriod: \"Number of epochs considered as 'burn-in period'. numberOfMarkovChains: Number of separate Gibbs sampling runs. + #' @param librarySearchAnchors Configure the use of identity spectral library search results as anchors in ZODIAC network + #' @param analogueSearchAnchors Configure the use of analogue spectral library search results as anchors in ZODIAC network #' @param ... Other optional arguments. - initialize = function(`enabled` = NULL, `consideredCandidatesAt300Mz` = NULL, `consideredCandidatesAt800Mz` = NULL, `runInTwoSteps` = NULL, `edgeFilterThresholds` = NULL, `gibbsSamplerParameters` = NULL, ...) { + initialize = function(`enabled` = NULL, `consideredCandidatesAt300Mz` = NULL, `consideredCandidatesAt800Mz` = NULL, `runInTwoSteps` = NULL, `edgeFilterThresholds` = NULL, `gibbsSamplerParameters` = NULL, `librarySearchAnchors` = NULL, `analogueSearchAnchors` = NULL, ...) { if (!is.null(`enabled`)) { if (!(is.logical(`enabled`) && length(`enabled`) == 1)) { stop(paste("Error! Invalid data for `enabled`. Must be a boolean:", `enabled`)) @@ -69,6 +75,14 @@ Zodiac <- R6::R6Class( stopifnot(R6::is.R6(`gibbsSamplerParameters`)) self$`gibbsSamplerParameters` <- `gibbsSamplerParameters` } + if (!is.null(`librarySearchAnchors`)) { + stopifnot(R6::is.R6(`librarySearchAnchors`)) + self$`librarySearchAnchors` <- `librarySearchAnchors` + } + if (!is.null(`analogueSearchAnchors`)) { + stopifnot(R6::is.R6(`analogueSearchAnchors`)) + self$`analogueSearchAnchors` <- `analogueSearchAnchors` + } }, #' @description @@ -126,6 +140,14 @@ Zodiac <- R6::R6Class( ZodiacObject[["gibbsSamplerParameters"]] <- self$`gibbsSamplerParameters`$toSimpleType() } + if (!is.null(self$`librarySearchAnchors`)) { + ZodiacObject[["librarySearchAnchors"]] <- + self$`librarySearchAnchors`$toSimpleType() + } + if (!is.null(self$`analogueSearchAnchors`)) { + ZodiacObject[["analogueSearchAnchors"]] <- + self$`analogueSearchAnchors`$toSimpleType() + } return(ZodiacObject) }, @@ -158,6 +180,16 @@ Zodiac <- R6::R6Class( `gibbssamplerparameters_object`$fromJSON(jsonlite::toJSON(this_object$`gibbsSamplerParameters`, auto_unbox = TRUE, digits = NA, null = 'null')) self$`gibbsSamplerParameters` <- `gibbssamplerparameters_object` } + if (!is.null(this_object$`librarySearchAnchors`)) { + `librarysearchanchors_object` <- ZodiacLibraryScoring$new() + `librarysearchanchors_object`$fromJSON(jsonlite::toJSON(this_object$`librarySearchAnchors`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`librarySearchAnchors` <- `librarysearchanchors_object` + } + if (!is.null(this_object$`analogueSearchAnchors`)) { + `analoguesearchanchors_object` <- ZodiacAnalogueNodes$new() + `analoguesearchanchors_object`$fromJSON(jsonlite::toJSON(this_object$`analogueSearchAnchors`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`analogueSearchAnchors` <- `analoguesearchanchors_object` + } self }, @@ -185,6 +217,8 @@ Zodiac <- R6::R6Class( self$`runInTwoSteps` <- this_object$`runInTwoSteps` self$`edgeFilterThresholds` <- ZodiacEdgeFilterThresholds$new()$fromJSON(jsonlite::toJSON(this_object$`edgeFilterThresholds`, auto_unbox = TRUE, digits = NA, null = 'null')) self$`gibbsSamplerParameters` <- ZodiacEpochs$new()$fromJSON(jsonlite::toJSON(this_object$`gibbsSamplerParameters`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`librarySearchAnchors` <- ZodiacLibraryScoring$new()$fromJSON(jsonlite::toJSON(this_object$`librarySearchAnchors`, auto_unbox = TRUE, digits = NA, null = 'null')) + self$`analogueSearchAnchors` <- ZodiacAnalogueNodes$new()$fromJSON(jsonlite::toJSON(this_object$`analogueSearchAnchors`, auto_unbox = TRUE, digits = NA, null = 'null')) self }, diff --git a/client-api_r/generated/R/zodiac_analogue_nodes.R b/client-api_r/generated/R/zodiac_analogue_nodes.R new file mode 100644 index 00000000..4a4b97c9 --- /dev/null +++ b/client-api_r/generated/R/zodiac_analogue_nodes.R @@ -0,0 +1,193 @@ +#' Create a new ZodiacAnalogueNodes +#' +#' @description +#' ZodiacAnalogueNodes Class +#' +#' @docType class +#' @title ZodiacAnalogueNodes +#' @description ZodiacAnalogueNodes Class +#' @format An \code{R6Class} generator object +#' @field enabled character [optional] +#' @field minSimilarity numeric [optional] +#' @field minSharedPeaks integer [optional] +#' @importFrom R6 R6Class +#' @importFrom jsonlite fromJSON toJSON +#' @export +ZodiacAnalogueNodes <- R6::R6Class( + "ZodiacAnalogueNodes", + public = list( + `enabled` = NULL, + `minSimilarity` = NULL, + `minSharedPeaks` = NULL, + + #' @description + #' Initialize a new ZodiacAnalogueNodes class. + #' + #' @param enabled enabled + #' @param minSimilarity minSimilarity + #' @param minSharedPeaks minSharedPeaks + #' @param ... Other optional arguments. + initialize = function(`enabled` = NULL, `minSimilarity` = NULL, `minSharedPeaks` = NULL, ...) { + if (!is.null(`enabled`)) { + if (!(is.logical(`enabled`) && length(`enabled`) == 1)) { + stop(paste("Error! Invalid data for `enabled`. Must be a boolean:", `enabled`)) + } + self$`enabled` <- `enabled` + } + if (!is.null(`minSimilarity`)) { + if (!(is.numeric(`minSimilarity`) && length(`minSimilarity`) == 1)) { + stop(paste("Error! Invalid data for `minSimilarity`. Must be a number:", `minSimilarity`)) + } + self$`minSimilarity` <- `minSimilarity` + } + if (!is.null(`minSharedPeaks`)) { + if (!(is.numeric(`minSharedPeaks`) && length(`minSharedPeaks`) == 1)) { + stop(paste("Error! Invalid data for `minSharedPeaks`. Must be an integer:", `minSharedPeaks`)) + } + self$`minSharedPeaks` <- `minSharedPeaks` + } + }, + + #' @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 ZodiacAnalogueNodes as a base R list. + #' @examples + #' # convert array of ZodiacAnalogueNodes (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 ZodiacAnalogueNodes to a base R type + #' + #' @return A base R type, e.g. a list or numeric/character array. + toSimpleType = function() { + ZodiacAnalogueNodesObject <- list() + if (!is.null(self$`enabled`)) { + ZodiacAnalogueNodesObject[["enabled"]] <- + self$`enabled` + } + if (!is.null(self$`minSimilarity`)) { + ZodiacAnalogueNodesObject[["minSimilarity"]] <- + self$`minSimilarity` + } + if (!is.null(self$`minSharedPeaks`)) { + ZodiacAnalogueNodesObject[["minSharedPeaks"]] <- + self$`minSharedPeaks` + } + return(ZodiacAnalogueNodesObject) + }, + + #' @description + #' Deserialize JSON string into an instance of ZodiacAnalogueNodes + #' + #' @param input_json the JSON input + #' @return the instance of ZodiacAnalogueNodes + fromJSON = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`enabled`)) { + self$`enabled` <- this_object$`enabled` + } + if (!is.null(this_object$`minSimilarity`)) { + self$`minSimilarity` <- this_object$`minSimilarity` + } + if (!is.null(this_object$`minSharedPeaks`)) { + self$`minSharedPeaks` <- this_object$`minSharedPeaks` + } + self + }, + + #' @description + #' To JSON String + #' + #' @param ... Parameters passed to `jsonlite::toJSON` + #' @return ZodiacAnalogueNodes 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 ZodiacAnalogueNodes + #' + #' @param input_json the JSON input + #' @return the instance of ZodiacAnalogueNodes + fromJSONString = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + self$`enabled` <- this_object$`enabled` + self$`minSimilarity` <- this_object$`minSimilarity` + self$`minSharedPeaks` <- this_object$`minSharedPeaks` + self + }, + + #' @description + #' Validate JSON input with respect to ZodiacAnalogueNodes 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 ZodiacAnalogueNodes + 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 +# ZodiacAnalogueNodes$unlock() +# +## Below is an example to define the print function +# ZodiacAnalogueNodes$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 +# ZodiacAnalogueNodes$lock() + diff --git a/client-api_r/generated/R/zodiac_library_scoring.R b/client-api_r/generated/R/zodiac_library_scoring.R new file mode 100644 index 00000000..ae7c84cb --- /dev/null +++ b/client-api_r/generated/R/zodiac_library_scoring.R @@ -0,0 +1,176 @@ +#' Create a new ZodiacLibraryScoring +#' +#' @description +#' ZodiacLibraryScoring Class +#' +#' @docType class +#' @title ZodiacLibraryScoring +#' @description ZodiacLibraryScoring Class +#' @format An \code{R6Class} generator object +#' @field enabled character [optional] +#' @field minSimilarity numeric [optional] +#' @importFrom R6 R6Class +#' @importFrom jsonlite fromJSON toJSON +#' @export +ZodiacLibraryScoring <- R6::R6Class( + "ZodiacLibraryScoring", + public = list( + `enabled` = NULL, + `minSimilarity` = NULL, + + #' @description + #' Initialize a new ZodiacLibraryScoring class. + #' + #' @param enabled enabled + #' @param minSimilarity minSimilarity + #' @param ... Other optional arguments. + initialize = function(`enabled` = NULL, `minSimilarity` = NULL, ...) { + if (!is.null(`enabled`)) { + if (!(is.logical(`enabled`) && length(`enabled`) == 1)) { + stop(paste("Error! Invalid data for `enabled`. Must be a boolean:", `enabled`)) + } + self$`enabled` <- `enabled` + } + if (!is.null(`minSimilarity`)) { + if (!(is.numeric(`minSimilarity`) && length(`minSimilarity`) == 1)) { + stop(paste("Error! Invalid data for `minSimilarity`. Must be a number:", `minSimilarity`)) + } + self$`minSimilarity` <- `minSimilarity` + } + }, + + #' @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 ZodiacLibraryScoring as a base R list. + #' @examples + #' # convert array of ZodiacLibraryScoring (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 ZodiacLibraryScoring to a base R type + #' + #' @return A base R type, e.g. a list or numeric/character array. + toSimpleType = function() { + ZodiacLibraryScoringObject <- list() + if (!is.null(self$`enabled`)) { + ZodiacLibraryScoringObject[["enabled"]] <- + self$`enabled` + } + if (!is.null(self$`minSimilarity`)) { + ZodiacLibraryScoringObject[["minSimilarity"]] <- + self$`minSimilarity` + } + return(ZodiacLibraryScoringObject) + }, + + #' @description + #' Deserialize JSON string into an instance of ZodiacLibraryScoring + #' + #' @param input_json the JSON input + #' @return the instance of ZodiacLibraryScoring + fromJSON = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`enabled`)) { + self$`enabled` <- this_object$`enabled` + } + if (!is.null(this_object$`minSimilarity`)) { + self$`minSimilarity` <- this_object$`minSimilarity` + } + self + }, + + #' @description + #' To JSON String + #' + #' @param ... Parameters passed to `jsonlite::toJSON` + #' @return ZodiacLibraryScoring 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 ZodiacLibraryScoring + #' + #' @param input_json the JSON input + #' @return the instance of ZodiacLibraryScoring + fromJSONString = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + self$`enabled` <- this_object$`enabled` + self$`minSimilarity` <- this_object$`minSimilarity` + self + }, + + #' @description + #' Validate JSON input with respect to ZodiacLibraryScoring 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 ZodiacLibraryScoring + 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 +# ZodiacLibraryScoring$unlock() +# +## Below is an example to define the print function +# ZodiacLibraryScoring$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 +# ZodiacLibraryScoring$lock() + diff --git a/client-api_r/generated/README.md b/client-api_r/generated/README.md index d0f3c815..90ee3556 100644 --- a/client-api_r/generated/README.md +++ b/client-api_r/generated/README.md @@ -75,60 +75,81 @@ Class | Method | HTTP request | Description ------------ | ------------- | ------------- | ------------- *ActuatorApi* | [**Health**](docs/ActuatorApi.md#Health) | **GET** /actuator/health | Actuator web endpoint 'health' *ActuatorApi* | [**Shutdown**](docs/ActuatorApi.md#Shutdown) | **POST** /actuator/shutdown | Actuator web endpoint 'shutdown' +*CompoundStatisticsApi* | [**ComputeCompoundFoldChangesExperimental**](docs/CompoundStatisticsApi.md#ComputeCompoundFoldChangesExperimental) | **PUT** /api/projects/{projectId}/compounds/statistics/foldchange/compute | [EXPERIMENTAL] Compute the fold change between two groups of runs +*CompoundStatisticsApi* | [**DeleteCompoundFoldChangesExperimental**](docs/CompoundStatisticsApi.md#DeleteCompoundFoldChangesExperimental) | **DELETE** /api/projects/{projectId}/compounds/statistics/foldchanges | [EXPERIMENTAL] Delete fold changes +*CompoundStatisticsApi* | [**GetCompoundFoldChangeTableExperimental**](docs/CompoundStatisticsApi.md#GetCompoundFoldChangeTableExperimental) | **GET** /api/projects/{projectId}/compounds/statistics/foldchanges/stats-table | [EXPERIMENTAL] Get table of all fold changes in the project space +*CompoundStatisticsApi* | [**GetFoldChangesByCompoundExperimental**](docs/CompoundStatisticsApi.md#GetFoldChangesByCompoundExperimental) | **GET** /api/projects/{projectId}/compounds/statistics/foldchanges/{objectId} | [EXPERIMENTAL] List all fold changes that are associated with an object *CompoundsApi* | [**AddCompounds**](docs/CompoundsApi.md#AddCompounds) | **POST** /api/projects/{projectId}/compounds | Import Compounds and its contained features. +*CompoundsApi* | [**AddTagsToCompoundExperimental**](docs/CompoundsApi.md#AddTagsToCompoundExperimental) | **PUT** /api/projects/{projectId}/compounds/tags/{compoundId} | [EXPERIMENTAL] Tags with the same name will be overwritten *CompoundsApi* | [**DeleteCompound**](docs/CompoundsApi.md#DeleteCompound) | **DELETE** /api/projects/{projectId}/compounds/{compoundId} | Delete compound (group of ion identities) with the given identifier (and the included features) from the specified project-space. *CompoundsApi* | [**GetCompound**](docs/CompoundsApi.md#GetCompound) | **GET** /api/projects/{projectId}/compounds/{compoundId} | Get compound (group of ion identities) with the given identifier from the specified project-space. -*CompoundsApi* | [**GetCompoundTracesExperimental**](docs/CompoundsApi.md#GetCompoundTracesExperimental) | **GET** /api/projects/{projectId}/compounds/{compoundId}/traces | EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +*CompoundsApi* | [**GetCompoundQuantTableExperimental**](docs/CompoundsApi.md#GetCompoundQuantTableExperimental) | **GET** /api/projects/{projectId}/compounds/quant-table | [EXPERIMENTAL] Returns the full quantification table of compounds +*CompoundsApi* | [**GetCompoundQuantTableRowExperimental**](docs/CompoundsApi.md#GetCompoundQuantTableRowExperimental) | **GET** /api/projects/{projectId}/compounds/{compoundId}/quant-table-row | [EXPERIMENTAL] Returns a single quantification table row for the given compound +*CompoundsApi* | [**GetCompoundTracesExperimental**](docs/CompoundsApi.md#GetCompoundTracesExperimental) | **GET** /api/projects/{projectId}/compounds/{compoundId}/traces | [EXPERIMENTAL] Returns the traces of the given compound *CompoundsApi* | [**GetCompounds**](docs/CompoundsApi.md#GetCompounds) | **GET** /api/projects/{projectId}/compounds | List of all available compounds (group of ion identities) in the given project-space. +*CompoundsApi* | [**GetCompoundsByGroupExperimental**](docs/CompoundsApi.md#GetCompoundsByGroupExperimental) | **GET** /api/projects/{projectId}/compounds/grouped | [EXPERIMENTAL] Get compounds (group of ion identities) by tag group +*CompoundsApi* | [**GetCompoundsByTagExperimental**](docs/CompoundsApi.md#GetCompoundsByTagExperimental) | **GET** /api/projects/{projectId}/compounds/tagged | [EXPERIMENTAL] Get compounds (group of ion identities) by tag *CompoundsApi* | [**GetCompoundsPaged**](docs/CompoundsApi.md#GetCompoundsPaged) | **GET** /api/projects/{projectId}/compounds/page | Page of available compounds (group of ion identities) in the given project-space. +*CompoundsApi* | [**GetTagsForCompoundExperimental**](docs/CompoundsApi.md#GetTagsForCompoundExperimental) | **GET** /api/projects/{projectId}/compounds/tags/{objectId} | [EXPERIMENTAL] Get all tags associated with this Compound +*CompoundsApi* | [**RemoveTagFromCompoundExperimental**](docs/CompoundsApi.md#RemoveTagFromCompoundExperimental) | **DELETE** /api/projects/{projectId}/compounds/tags/{compoundId}/{tagName} | [EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space +*FeatureStatisticsApi* | [**ComputeAlignedFeatureFoldChangesExperimental**](docs/FeatureStatisticsApi.md#ComputeAlignedFeatureFoldChangesExperimental) | **PUT** /api/projects/{projectId}/aligned-features/statistics/foldchange/compute | [EXPERIMENTAL] Compute the fold change between two groups of runs +*FeatureStatisticsApi* | [**DeleteAlignedFeatureFoldChangesExperimental**](docs/FeatureStatisticsApi.md#DeleteAlignedFeatureFoldChangesExperimental) | **DELETE** /api/projects/{projectId}/aligned-features/statistics/foldchanges | [EXPERIMENTAL] Delete fold changes +*FeatureStatisticsApi* | [**GetAlignedFeatureFoldChangeTableExperimental**](docs/FeatureStatisticsApi.md#GetAlignedFeatureFoldChangeTableExperimental) | **GET** /api/projects/{projectId}/aligned-features/statistics/foldchanges/stats-table | [EXPERIMENTAL] Get table of all fold changes in the project space +*FeatureStatisticsApi* | [**GetFoldChangesByAlignedFeatureExperimental**](docs/FeatureStatisticsApi.md#GetFoldChangesByAlignedFeatureExperimental) | **GET** /api/projects/{projectId}/aligned-features/statistics/foldchanges/{objectId} | [EXPERIMENTAL] List all fold changes that are associated with an object *FeaturesApi* | [**AddAlignedFeatures**](docs/FeaturesApi.md#AddAlignedFeatures) | **POST** /api/projects/{projectId}/aligned-features | Import (aligned) features into the project. +*FeaturesApi* | [**AddDeNovoStructureCandidate**](docs/FeaturesApi.md#AddDeNovoStructureCandidate) | **PUT** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures | [EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. +*FeaturesApi* | [**AddTagsToAlignedFeatureExperimental**](docs/FeaturesApi.md#AddTagsToAlignedFeatureExperimental) | **PUT** /api/projects/{projectId}/aligned-features/tags/{alignedFeatureId} | [EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project *FeaturesApi* | [**DeleteAlignedFeature**](docs/FeaturesApi.md#DeleteAlignedFeature) | **DELETE** /api/projects/{projectId}/aligned-features/{alignedFeatureId} | Delete feature (aligned over runs) with the given identifier from the specified project-space. *FeaturesApi* | [**DeleteAlignedFeatures**](docs/FeaturesApi.md#DeleteAlignedFeatures) | **PUT** /api/projects/{projectId}/aligned-features/delete | Delete feature (aligned over runs) with the given identifier from the specified project-space. -*FeaturesApi* | [**GetAdductNetworkWithMergedTracesExperimental**](docs/FeaturesApi.md#GetAdductNetworkWithMergedTracesExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts | EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +*FeaturesApi* | [**GetAdductNetworkWithMergedTracesExperimental**](docs/FeaturesApi.md#GetAdductNetworkWithMergedTracesExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts | [EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network *FeaturesApi* | [**GetAlignedFeature**](docs/FeaturesApi.md#GetAlignedFeature) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId} | Get feature (aligned over runs) with the given identifier from the specified project-space. +*FeaturesApi* | [**GetAlignedFeatureQualityExperimental**](docs/FeaturesApi.md#GetAlignedFeatureQualityExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report | [EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId) *FeaturesApi* | [**GetAlignedFeatures**](docs/FeaturesApi.md#GetAlignedFeatures) | **GET** /api/projects/{projectId}/aligned-features | Get all available features (aligned over runs) in the given project-space. +*FeaturesApi* | [**GetAlignedFeaturesByGroupExperimental**](docs/FeaturesApi.md#GetAlignedFeaturesByGroupExperimental) | **GET** /api/projects/{projectId}/aligned-features/grouped | [EXPERIMENTAL] Get features (aligned over runs) by tag group +*FeaturesApi* | [**GetAlignedFeaturesByTagExperimental**](docs/FeaturesApi.md#GetAlignedFeaturesByTagExperimental) | **GET** /api/projects/{projectId}/aligned-features/tagged | [EXPERIMENTAL] Get features (aligned over runs) by tag *FeaturesApi* | [**GetAlignedFeaturesPaged**](docs/FeaturesApi.md#GetAlignedFeaturesPaged) | **GET** /api/projects/{projectId}/aligned-features/page | Get all available features (aligned over runs) in the given project-space. -*FeaturesApi* | [**GetAlignedFeaturesQualityExperimental**](docs/FeaturesApi.md#GetAlignedFeaturesQualityExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report | EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. -*FeaturesApi* | [**GetBestMatchingCompoundClasses**](docs/FeaturesApi.md#GetBestMatchingCompoundClasses) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes | Best matching compound classes, Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, +*FeaturesApi* | [**GetBestMatchingCompoundClasses**](docs/FeaturesApi.md#GetBestMatchingCompoundClasses) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes | Return Best matching compound classes for given formulaId *FeaturesApi* | [**GetCanopusPrediction**](docs/FeaturesApi.md#GetCanopusPrediction) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/canopus-prediction | All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities, *FeaturesApi* | [**GetDeNovoStructureCandidates**](docs/FeaturesApi.md#GetDeNovoStructureCandidates) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures | List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. *FeaturesApi* | [**GetDeNovoStructureCandidatesByFormula**](docs/FeaturesApi.md#GetDeNovoStructureCandidatesByFormula) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures | List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. *FeaturesApi* | [**GetDeNovoStructureCandidatesByFormulaPaged**](docs/FeaturesApi.md#GetDeNovoStructureCandidatesByFormulaPaged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures/page | Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. *FeaturesApi* | [**GetDeNovoStructureCandidatesPaged**](docs/FeaturesApi.md#GetDeNovoStructureCandidatesPaged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures/page | Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. -*FeaturesApi* | [**GetFingerprintPrediction**](docs/FeaturesApi.md#GetFingerprintPrediction) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint | Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier This fingerprint is used to perform structure database search and predict compound classes. -*FeaturesApi* | [**GetFormulaAnnotatedMsMsData**](docs/FeaturesApi.md#GetFormulaAnnotatedMsMsData) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata | Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. -*FeaturesApi* | [**GetFormulaAnnotatedSpectrum**](docs/FeaturesApi.md#GetFormulaAnnotatedSpectrum) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum | Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. +*FeaturesApi* | [**GetFeatureQuantTableExperimental**](docs/FeaturesApi.md#GetFeatureQuantTableExperimental) | **GET** /api/projects/{projectId}/aligned-features/quant-table | [EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId) +*FeaturesApi* | [**GetFingerprintPrediction**](docs/FeaturesApi.md#GetFingerprintPrediction) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint | Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId) +*FeaturesApi* | [**GetFormulaAnnotatedMsMsData**](docs/FeaturesApi.md#GetFormulaAnnotatedMsMsData) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata | Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId +*FeaturesApi* | [**GetFormulaAnnotatedSpectrum**](docs/FeaturesApi.md#GetFormulaAnnotatedSpectrum) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum | Returns a fragmentation spectrum (e *FeaturesApi* | [**GetFormulaCandidate**](docs/FeaturesApi.md#GetFormulaCandidate) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId} | FormulaResultContainers for the given 'formulaId' with minimal information. *FeaturesApi* | [**GetFormulaCandidates**](docs/FeaturesApi.md#GetFormulaCandidates) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas | List of FormulaResultContainers available for this feature with minimal information. *FeaturesApi* | [**GetFormulaCandidatesPaged**](docs/FeaturesApi.md#GetFormulaCandidatesPaged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/page | Page of FormulaResultContainers available for this feature with minimal information. -*FeaturesApi* | [**GetFragTree**](docs/FeaturesApi.md#GetFragTree) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree | Returns fragmentation tree (SIRIUS) for the given formula result identifier This tree is used to rank formula candidates (treeScore). -*FeaturesApi* | [**GetIsotopePatternAnnotation**](docs/FeaturesApi.md#GetIsotopePatternAnnotation) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern | Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. -*FeaturesApi* | [**GetLipidAnnotation**](docs/FeaturesApi.md#GetLipidAnnotation) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation | Returns Lipid annotation (ElGordo) for the given formula result identifier. +*FeaturesApi* | [**GetFragTree**](docs/FeaturesApi.md#GetFragTree) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree | Returns fragmentation tree (SIRIUS) for the given formula result identifier +*FeaturesApi* | [**GetIsotopePatternAnnotation**](docs/FeaturesApi.md#GetIsotopePatternAnnotation) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern | Returns Isotope pattern information for given formulaId +*FeaturesApi* | [**GetLipidAnnotation**](docs/FeaturesApi.md#GetLipidAnnotation) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation | Returns Lipid annotation (ElGordo) for the given formulaId *FeaturesApi* | [**GetMsData**](docs/FeaturesApi.md#GetMsData) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/ms-data | Mass Spec data (input data) for the given 'alignedFeatureId' . -*FeaturesApi* | [**GetQuantificationExperimental**](docs/FeaturesApi.md#GetQuantificationExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/quantification | EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. -*FeaturesApi* | [**GetSpectralLibraryMatch**](docs/FeaturesApi.md#GetSpectralLibraryMatch) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId} | List of spectral library matches for the given 'alignedFeatureId'. +*FeaturesApi* | [**GetQuantTableRowExperimental**](docs/FeaturesApi.md#GetQuantTableRowExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/quant-table-row | [EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId) +*FeaturesApi* | [**GetSpectralLibraryMatch**](docs/FeaturesApi.md#GetSpectralLibraryMatch) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId} | Spectral library match for the given 'alignedFeatureId'. *FeaturesApi* | [**GetSpectralLibraryMatches**](docs/FeaturesApi.md#GetSpectralLibraryMatches) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches | List of spectral library matches for the given 'alignedFeatureId'. *FeaturesApi* | [**GetSpectralLibraryMatchesPaged**](docs/FeaturesApi.md#GetSpectralLibraryMatchesPaged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/page | Page of spectral library matches for the given 'alignedFeatureId'. *FeaturesApi* | [**GetSpectralLibraryMatchesSummary**](docs/FeaturesApi.md#GetSpectralLibraryMatchesSummary) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/summary | Summarize matched reference spectra for the given 'alignedFeatureId'. -*FeaturesApi* | [**GetStructureAnnotatedMsDataExperimental**](docs/FeaturesApi.md#GetStructureAnnotatedMsDataExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata | EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. -*FeaturesApi* | [**GetStructureAnnotatedSpectrumExperimental**](docs/FeaturesApi.md#GetStructureAnnotatedSpectrumExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum | EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. +*FeaturesApi* | [**GetStructureAnnotatedMsDataExperimental**](docs/FeaturesApi.md#GetStructureAnnotatedMsDataExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata | [EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey +*FeaturesApi* | [**GetStructureAnnotatedSpectralLibraryMatchExperimental**](docs/FeaturesApi.md#GetStructureAnnotatedSpectralLibraryMatchExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}/annotated | [EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations +*FeaturesApi* | [**GetStructureAnnotatedSpectrumExperimental**](docs/FeaturesApi.md#GetStructureAnnotatedSpectrumExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum | [EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey *FeaturesApi* | [**GetStructureCandidates**](docs/FeaturesApi.md#GetStructureCandidates) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures | List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. *FeaturesApi* | [**GetStructureCandidatesByFormula**](docs/FeaturesApi.md#GetStructureCandidatesByFormula) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures | List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. *FeaturesApi* | [**GetStructureCandidatesByFormulaPaged**](docs/FeaturesApi.md#GetStructureCandidatesByFormulaPaged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures/page | Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. *FeaturesApi* | [**GetStructureCandidatesPaged**](docs/FeaturesApi.md#GetStructureCandidatesPaged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures/page | Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. -*FeaturesApi* | [**GetTracesExperimental**](docs/FeaturesApi.md#GetTracesExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces | EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. -*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. +*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 *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. *JobsApi* | [**DeleteJobConfig**](docs/JobsApi.md#DeleteJobConfig) | **DELETE** /api/job-configs/{name} | Delete job configuration with given name. *JobsApi* | [**DeleteJobs**](docs/JobsApi.md#DeleteJobs) | **DELETE** /api/projects/{projectId}/jobs | * Delete ALL jobs. +*JobsApi* | [**GetCommand**](docs/JobsApi.md#GetCommand) | **POST** /api/job-configs/get-command | Get a CLI command for the given job configuration. *JobsApi* | [**GetDefaultJobConfig**](docs/JobsApi.md#GetDefaultJobConfig) | **GET** /api/default-job-config | Request default job configuration *JobsApi* | [**GetJob**](docs/JobsApi.md#GetJob) | **GET** /api/projects/{projectId}/jobs/{jobId} | Get job information and its current state and progress (if available). *JobsApi* | [**GetJobConfig**](docs/JobsApi.md#GetJobConfig) | **GET** /api/job-configs/{name} | Request job configuration with given name. -*JobsApi* | [**GetJobConfigNames**](docs/JobsApi.md#GetJobConfigNames) | **GET** /api/job-config-names | DEPRECATED: use /job-configs to get all configs with names. +*JobsApi* | [**GetJobConfigNames**](docs/JobsApi.md#GetJobConfigNames) | **GET** /api/job-config-names | [DEPRECATED] Get all (non-default) job configuration names *JobsApi* | [**GetJobConfigs**](docs/JobsApi.md#GetJobConfigs) | **GET** /api/job-configs | Request all available job configurations *JobsApi* | [**GetJobs**](docs/JobsApi.md#GetJobs) | **GET** /api/projects/{projectId}/jobs | Get List of all available jobs with information such as current state and progress (if available). *JobsApi* | [**GetJobsPaged**](docs/JobsApi.md#GetJobsPaged) | **GET** /api/projects/{projectId}/jobs/page | Get Page of jobs with information such as current state and progress (if available). @@ -145,7 +166,7 @@ Class | Method | HTTP request | Description *LoginAndAccountApi* | [**OpenPortal**](docs/LoginAndAccountApi.md#OpenPortal) | **GET** /api/account/openPortal | Open User portal in browser. *LoginAndAccountApi* | [**SelectSubscription**](docs/LoginAndAccountApi.md#SelectSubscription) | **PUT** /api/account/subscriptions/select-active | Select a subscription as active subscription to be used for computations. *LoginAndAccountApi* | [**SignUp**](docs/LoginAndAccountApi.md#SignUp) | **GET** /api/account/signUp | Open SignUp window in system browser and return signUp link. -*ProjectsApi* | [**CloseProject**](docs/ProjectsApi.md#CloseProject) | **DELETE** /api/projects/{projectId} | Close project-space and remove it from application +*ProjectsApi* | [**CloseProject**](docs/ProjectsApi.md#CloseProject) | **DELETE** /api/projects/{projectId} | Close project-space and remove it from the application *ProjectsApi* | [**CreateProject**](docs/ProjectsApi.md#CreateProject) | **POST** /api/projects/{projectId} | Create and open a new project-space at given location and make it accessible via the given projectId. *ProjectsApi* | [**GetCanopusClassyFireData**](docs/ProjectsApi.md#GetCanopusClassyFireData) | **GET** /api/projects/{projectId}/cf-data | Get CANOPUS prediction vector definition for ClassyFire classes *ProjectsApi* | [**GetCanopusNpcData**](docs/ProjectsApi.md#GetCanopusNpcData) | **GET** /api/projects/{projectId}/npc-data | Get CANOPUS prediction vector definition for NPC classes @@ -157,6 +178,14 @@ Class | Method | HTTP request | Description *ProjectsApi* | [**ImportPreprocessedData**](docs/ProjectsApi.md#ImportPreprocessedData) | **POST** /api/projects/{projectId}/import/preprocessed-data-files | Import already preprocessed ms/ms data from various formats into the specified project Possible formats (ms, mgf, cef, msp) *ProjectsApi* | [**ImportPreprocessedDataAsJob**](docs/ProjectsApi.md#ImportPreprocessedDataAsJob) | **POST** /api/projects/{projectId}/import/preprocessed-data-files-job | Import ms/ms data from the given format into the specified project-space as background job. *ProjectsApi* | [**OpenProject**](docs/ProjectsApi.md#OpenProject) | **PUT** /api/projects/{projectId} | Open an existing project-space and make it accessible via the given projectId. +*RunsApi* | [**AddTagsToRunExperimental**](docs/RunsApi.md#AddTagsToRunExperimental) | **PUT** /api/projects/{projectId}/runs/tags/{runId} | [EXPERIMENTAL] Add tags to a run in the project +*RunsApi* | [**ComputeFoldChangeForBlankSubtraction**](docs/RunsApi.md#ComputeFoldChangeForBlankSubtraction) | **PUT** /api/projects/{projectId}/runs/blanksubtract/compute | **EXPERIMENTAL** Compute the fold changes that are required for the fold change filter +*RunsApi* | [**GetRunExperimental**](docs/RunsApi.md#GetRunExperimental) | **GET** /api/projects/{projectId}/runs/{runId} | [EXPERIMENTAL] Get run with the given identifier from the specified project-space +*RunsApi* | [**GetRunPageExperimental**](docs/RunsApi.md#GetRunPageExperimental) | **GET** /api/projects/{projectId}/runs/page | [EXPERIMENTAL] Get all available runs in the given project-space +*RunsApi* | [**GetRunsByGroupExperimental**](docs/RunsApi.md#GetRunsByGroupExperimental) | **GET** /api/projects/{projectId}/runs/grouped | [EXPERIMENTAL] Get runs by tag group +*RunsApi* | [**GetRunsByTagExperimental**](docs/RunsApi.md#GetRunsByTagExperimental) | **GET** /api/projects/{projectId}/runs/tagged | [EXPERIMENTAL] Get runs by tag +*RunsApi* | [**GetTagsForRunExperimental**](docs/RunsApi.md#GetTagsForRunExperimental) | **GET** /api/projects/{projectId}/runs/tags/{objectId} | [EXPERIMENTAL] Get all tags associated with this Run +*RunsApi* | [**RemoveTagFromRunExperimental**](docs/RunsApi.md#RemoveTagFromRunExperimental) | **DELETE** /api/projects/{projectId}/runs/tags/{runId}/{tagName} | [EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space *SearchableDatabasesApi* | [**AddDatabases**](docs/SearchableDatabasesApi.md#AddDatabases) | **POST** /api/databases | DEPRECATED: this endpoint is based on local file paths and will likely be replaced in future versions of this API. *SearchableDatabasesApi* | [**CreateDatabase**](docs/SearchableDatabasesApi.md#CreateDatabase) | **POST** /api/databases/{databaseId} | *SearchableDatabasesApi* | [**GetCustomDatabases**](docs/SearchableDatabasesApi.md#GetCustomDatabases) | **GET** /api/databases/custom | @@ -166,6 +195,15 @@ Class | Method | HTTP request | Description *SearchableDatabasesApi* | [**ImportIntoDatabase**](docs/SearchableDatabasesApi.md#ImportIntoDatabase) | **POST** /api/databases/{databaseId}/import/from-files | Start import of structure and spectra files into the specified database. *SearchableDatabasesApi* | [**RemoveDatabase**](docs/SearchableDatabasesApi.md#RemoveDatabase) | **DELETE** /api/databases/{databaseId} | *SearchableDatabasesApi* | [**UpdateDatabase**](docs/SearchableDatabasesApi.md#UpdateDatabase) | **PUT** /api/databases/{databaseId} | +*TagsApi* | [**AddGroup**](docs/TagsApi.md#AddGroup) | **POST** /api/projects/{projectId}/groups/{groupName} | [EXPERIMENTAL] Group tags in the project +*TagsApi* | [**AddPossibleValuesToTagDefinition**](docs/TagsApi.md#AddPossibleValuesToTagDefinition) | **PATCH** /api/projects/{projectId}/tags/{tagName} | [EXPERIMENTAL] Add a possible value to the tag definition in the project +*TagsApi* | [**CreateTags**](docs/TagsApi.md#CreateTags) | **PUT** /api/projects/{projectId}/tags | [EXPERIMENTAL] Add tags to the project +*TagsApi* | [**DeleteGroup**](docs/TagsApi.md#DeleteGroup) | **DELETE** /api/projects/{projectId}/groups/{groupName} | [EXPERIMENTAL] Delete tag groups with the given name from the specified project-space +*TagsApi* | [**DeleteTag**](docs/TagsApi.md#DeleteTag) | **DELETE** /api/projects/{projectId}/tags/{tagName} | [EXPERIMENTAL] Delete tag definition with the given name from the specified project-space +*TagsApi* | [**GetGroupByName**](docs/TagsApi.md#GetGroupByName) | **GET** /api/projects/{projectId}/groups/{groupName} | [EXPERIMENTAL] Get tag group by name in the given project-space +*TagsApi* | [**GetGroups**](docs/TagsApi.md#GetGroups) | **GET** /api/projects/{projectId}/groups | [EXPERIMENTAL] Get all tag based groups in the given project-space +*TagsApi* | [**GetTag**](docs/TagsApi.md#GetTag) | **GET** /api/projects/{projectId}/tags/{tagName} | [EXPERIMENTAL] Get tag definition by its name in the given project-space +*TagsApi* | [**GetTags**](docs/TagsApi.md#GetTags) | **GET** /api/projects/{projectId}/tags | [EXPERIMENTAL] Get all tag definitions in the given project-space ## Documentation for Models @@ -177,6 +215,7 @@ Class | Method | HTTP request | Description - [AdductNodeExperimental](docs/AdductNodeExperimental.md) - [AlignedFeature](docs/AlignedFeature.md) - [AlignedFeatureQualityExperimental](docs/AlignedFeatureQualityExperimental.md) + - [AllowedFeatures](docs/AllowedFeatures.md) - [AnnotatedMsMsData](docs/AnnotatedMsMsData.md) - [AnnotatedPeak](docs/AnnotatedPeak.md) - [AnnotatedSpectrum](docs/AnnotatedSpectrum.md) @@ -184,6 +223,8 @@ Class | Method | HTTP request | Description - [BackgroundComputationsStateEvent](docs/BackgroundComputationsStateEvent.md) - [BasicSpectrum](docs/BasicSpectrum.md) - [BinaryFingerprint](docs/BinaryFingerprint.md) + - [BioTransformerParameters](docs/BioTransformerParameters.md) + - [BioTransformerSequenceStep](docs/BioTransformerSequenceStep.md) - [Canopus](docs/Canopus.md) - [CanopusPrediction](docs/CanopusPrediction.md) - [Category](docs/Category.md) @@ -202,10 +243,10 @@ Class | Method | HTTP request | Description - [FeatureAnnotations](docs/FeatureAnnotations.md) - [FeatureImport](docs/FeatureImport.md) - [FingerprintPrediction](docs/FingerprintPrediction.md) + - [FoldChange](docs/FoldChange.md) - [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) @@ -223,23 +264,31 @@ Class | Method | HTTP request | Description - [PagedModelCompound](docs/PagedModelCompound.md) - [PagedModelFormulaCandidate](docs/PagedModelFormulaCandidate.md) - [PagedModelJob](docs/PagedModelJob.md) + - [PagedModelRun](docs/PagedModelRun.md) - [PagedModelSpectralLibraryMatch](docs/PagedModelSpectralLibraryMatch.md) - [PagedModelStructureCandidateFormula](docs/PagedModelStructureCandidateFormula.md) - [PagedModelStructureCandidateScored](docs/PagedModelStructureCandidateScored.md) - [ParentPeak](docs/ParentPeak.md) - [PeakAnnotation](docs/PeakAnnotation.md) + - [PeakPair](docs/PeakPair.md) - [ProjectChangeEvent](docs/ProjectChangeEvent.md) - [ProjectInfo](docs/ProjectInfo.md) - [QualityItem](docs/QualityItem.md) - - [QuantificationTableExperimental](docs/QuantificationTableExperimental.md) + - [QuantTableExperimental](docs/QuantTableExperimental.md) + - [Run](docs/Run.md) + - [RunOptField](docs/RunOptField.md) + - [SampleTypeFoldChangeRequest](docs/SampleTypeFoldChangeRequest.md) - [SearchableDatabase](docs/SearchableDatabase.md) - [SearchableDatabaseParameters](docs/SearchableDatabaseParameters.md) + - [SecurityContext](docs/SecurityContext.md) + - [SecurityContextPrincipal](docs/SecurityContextPrincipal.md) - [SimplePeak](docs/SimplePeak.md) - [Sirius](docs/Sirius.md) - [SpectralLibraryMatch](docs/SpectralLibraryMatch.md) - [SpectralLibraryMatchSummary](docs/SpectralLibraryMatchSummary.md) - [SpectralLibrarySearch](docs/SpectralLibrarySearch.md) - [SpectrumAnnotation](docs/SpectrumAnnotation.md) + - [StatisticsTable](docs/StatisticsTable.md) - [StoredJobSubmission](docs/StoredJobSubmission.md) - [StructureCandidate](docs/StructureCandidate.md) - [StructureCandidateFormula](docs/StructureCandidateFormula.md) @@ -247,15 +296,22 @@ Class | Method | HTTP request | Description - [StructureDbSearch](docs/StructureDbSearch.md) - [Subscription](docs/Subscription.md) - [SubscriptionConsumables](docs/SubscriptionConsumables.md) + - [Tag](docs/Tag.md) + - [TagDefinition](docs/TagDefinition.md) + - [TagDefinitionImport](docs/TagDefinitionImport.md) + - [TagGroup](docs/TagGroup.md) - [Term](docs/Term.md) - [Timeout](docs/Timeout.md) - [TraceAnnotationExperimental](docs/TraceAnnotationExperimental.md) - [TraceExperimental](docs/TraceExperimental.md) - [TraceSetExperimental](docs/TraceSetExperimental.md) - [UseHeuristic](docs/UseHeuristic.md) + - [WebServerNamespace](docs/WebServerNamespace.md) - [Zodiac](docs/Zodiac.md) + - [ZodiacAnalogueNodes](docs/ZodiacAnalogueNodes.md) - [ZodiacEdgeFilterThresholds](docs/ZodiacEdgeFilterThresholds.md) - [ZodiacEpochs](docs/ZodiacEpochs.md) + - [ZodiacLibraryScoring](docs/ZodiacLibraryScoring.md) ## Documentation for Authorization diff --git a/client-api_r/generated/docs/ActuatorApi.md b/client-api_r/generated/docs/ActuatorApi.md index b68b4493..db4b6963 100644 --- a/client-api_r/generated/docs/ActuatorApi.md +++ b/client-api_r/generated/docs/ActuatorApi.md @@ -41,7 +41,7 @@ No authorization required ### HTTP request headers - **Content-Type**: Not defined - - **Accept**: application/vnd.spring-boot.actuator.v3+json, application/json, application/vnd.spring-boot.actuator.v2+json + - **Accept**: application/vnd.spring-boot.actuator.v3+json, application/vnd.spring-boot.actuator.v2+json, application/json ### HTTP response details | Status code | Description | Response headers | @@ -49,7 +49,7 @@ No authorization required | **200** | OK | - | # **Shutdown** -> object Shutdown() +> Shutdown() Actuator web endpoint 'shutdown' @@ -61,10 +61,7 @@ library(Rsirius) # api_instance <- rsirius_api$new() -# to save the result into a file, simply add the optional `data_file` parameter, e.g. -# result <- api_instance$Shutdown(data_file = "result.txt") -result <- api_instance$actuator_api$Shutdown() -dput(result) +api_instance$actuator_api$Shutdown() ``` ### Parameters @@ -72,7 +69,7 @@ This endpoint does not need any parameter. ### Return type -**object** +void (empty response body) ### Authorization @@ -81,10 +78,11 @@ No authorization required ### HTTP request headers - **Content-Type**: Not defined - - **Accept**: application/vnd.spring-boot.actuator.v3+json, application/json, application/vnd.spring-boot.actuator.v2+json + - **Accept**: Not defined ### HTTP response details | Status code | Description | Response headers | |-------------|-------------|------------------| -| **200** | OK | - | +| **204** | No Content | - | +| **400** | Bad Request | - | diff --git a/client-api_r/generated/docs/AlignedFeature.md b/client-api_r/generated/docs/AlignedFeature.md index 53552cf2..581f7821 100644 --- a/client-api_r/generated/docs/AlignedFeature.md +++ b/client-api_r/generated/docs/AlignedFeature.md @@ -18,10 +18,11 @@ Name | Type | Description | Notes **quality** | **character** | Quality of this feature. | [optional] [Enum: [NOT_APPLICABLE, LOWEST, BAD, DECENT, GOOD]] **hasMs1** | **character** | If true, the feature has at lease one MS1 spectrum | [optional] **hasMsMs** | **character** | If true, the feature has at lease one MS/MS spectrum | [optional] -**msData** | [**MsData**](MsData.md) | | [optional] -**topAnnotations** | [**FeatureAnnotations**](FeatureAnnotations.md) | | [optional] -**topAnnotationsDeNovo** | [**FeatureAnnotations**](FeatureAnnotations.md) | | [optional] +**msData** | [**MsData**](MsData.md) | Mass Spec data of this feature (input data) | [optional] +**topAnnotations** | [**FeatureAnnotations**](FeatureAnnotations.md) | Top annotations of this feature. If a CSI:FingerID structureAnnotation is available, the FormulaCandidate that corresponds to the structureAnnotation is returned. Otherwise, it's the FormulaCandidate with the highest SiriusScore is returned. CANOPUS Compound classes correspond to the FormulaCandidate no matter how it was selected Null if it was not requested und non-null otherwise. | [optional] +**topAnnotationsDeNovo** | [**FeatureAnnotations**](FeatureAnnotations.md) | Top de novo annotations of this feature. The FormulaCandidate with the highest SiriusScore is returned. MSNovelist structureAnnotation and CANOPUS compoundClasses correspond to the FormulaCandidate. Null if it was not requested und non-null otherwise. | [optional] **computing** | **character** | Write lock for this feature. If the feature is locked no write operations are possible. True if any computation is modifying this feature or its results | [optional] -**computedTools** | [**ComputedSubtools**](ComputedSubtools.md) | | [optional] +**computedTools** | [**ComputedSubtools**](ComputedSubtools.md) | 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. | [optional] +**tags** | [**map(Tag)**](Tag.md) | Key: tagName, value: tag | [optional] diff --git a/client-api_r/generated/docs/AllowedFeatures.md b/client-api_r/generated/docs/AllowedFeatures.md new file mode 100644 index 00000000..7a2db00e --- /dev/null +++ b/client-api_r/generated/docs/AllowedFeatures.md @@ -0,0 +1,14 @@ +# Rsirius::AllowedFeatures + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**cli** | **character** | | [optional] +**api** | **character** | | [optional] +**deNovo** | **character** | | [optional] +**importMSRuns** | **character** | | [optional] +**importPeakLists** | **character** | | [optional] +**importCef** | **character** | | [optional] + + diff --git a/client-api_r/generated/docs/AnnotatedSpectrum.md b/client-api_r/generated/docs/AnnotatedSpectrum.md index f1e80598..694b5236 100644 --- a/client-api_r/generated/docs/AnnotatedSpectrum.md +++ b/client-api_r/generated/docs/AnnotatedSpectrum.md @@ -11,8 +11,14 @@ Name | Type | Description | Notes **instrument** | **character** | Instrument information. | [optional] **precursorMz** | **numeric** | Precursor m/z of the MS/MS spectrum Null for spectra where precursor m/z is not applicable | [optional] **scanNumber** | **integer** | Scan number of the spectrum. Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra) | [optional] +**cosineQuery** | **character** | True if spectrum is in cosine query normalized format. Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra. | [default to FALSE] +**precursorPeak** | [**SimplePeak**](SimplePeak.md) | A separate precursor peak field to either mark the precursor in the peaklist or provide the precursor peak separately from the spectrum in case the spectrum is in a preprocessed form where the precursor peak has been removed for library matching. NULL if the spectrum does not contain the precursor peak. | [optional] **peaks** | [**array[AnnotatedPeak]**](AnnotatedPeak.md) | The peaks of this spectrum which might contain additional annotations such as molecular formulas. | -**absIntensityFactor** | **numeric** | Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra) | [optional] -**spectrumAnnotation** | [**SpectrumAnnotation**](SpectrumAnnotation.md) | | [optional] +**absIntensityFactor** | **numeric** | Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra) <p> DEPRECATED: Spectra are always returned with raw intensities. Use provided normalization factors to normalize on the fly. | [optional] +**maxNormFactor** | **numeric** | Factor to convert absolute intensities to MAX norm. | [optional] +**sumNormFactor** | **numeric** | Factor to convert absolute intensities to SUM norm. | [optional] +**l2NormFactor** | **numeric** | Factor to convert absolute intensities to L2 (Euclidean) norm. | [optional] +**firstPeakNormFactor** | **numeric** | Factor to convert absolute intensities to normalize intensities by first peak intensity. | [optional] +**spectrumAnnotation** | [**SpectrumAnnotation**](SpectrumAnnotation.md) | Optional Annotations of this spectrum. | [optional] diff --git a/client-api_r/generated/docs/BasicSpectrum.md b/client-api_r/generated/docs/BasicSpectrum.md index deff8dda..7bbcd2f0 100644 --- a/client-api_r/generated/docs/BasicSpectrum.md +++ b/client-api_r/generated/docs/BasicSpectrum.md @@ -10,7 +10,13 @@ Name | Type | Description | Notes **instrument** | **character** | Instrument information. | [optional] **precursorMz** | **numeric** | Precursor m/z of the MS/MS spectrum Null for spectra where precursor m/z is not applicable | [optional] **scanNumber** | **integer** | Scan number of the spectrum. Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra) | [optional] +**cosineQuery** | **character** | True if spectrum is in cosine query normalized format. Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra. | [default to FALSE] +**precursorPeak** | [**SimplePeak**](SimplePeak.md) | A separate precursor peak field to either mark the precursor in the peaklist or provide the precursor peak separately from the spectrum in case the spectrum is in a preprocessed form where the precursor peak has been removed for library matching. NULL if the spectrum does not contain the precursor peak. | [optional] **peaks** | [**array[SimplePeak]**](SimplePeak.md) | The peaks of this spectrum which might contain additional annotations such as molecular formulas. | -**absIntensityFactor** | **numeric** | Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra) | [optional] +**absIntensityFactor** | **numeric** | Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra) <p> DEPRECATED: Spectra are always returned with raw intensities. Use provided normalization factors to normalize on the fly. | [optional] +**maxNormFactor** | **numeric** | Factor to convert absolute intensities to MAX norm. | [optional] +**sumNormFactor** | **numeric** | Factor to convert absolute intensities to SUM norm. | [optional] +**l2NormFactor** | **numeric** | Factor to convert absolute intensities to L2 (Euclidean) norm. | [optional] +**firstPeakNormFactor** | **numeric** | Factor to convert absolute intensities to normalize intensities by first peak intensity. | [optional] diff --git a/client-api_r/generated/docs/BioTransformerParameters.md b/client-api_r/generated/docs/BioTransformerParameters.md new file mode 100644 index 00000000..40e953e0 --- /dev/null +++ b/client-api_r/generated/docs/BioTransformerParameters.md @@ -0,0 +1,12 @@ +# Rsirius::BioTransformerParameters + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**cyp450Mode** | **character** | Specify the Phase I/Cyp450 mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that require the Cyp450 mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified that do not need the Cyp450 mode. | [default to "COMBINED"] [Enum: [RULE_BASED, CY_PRODUCT, COMBINED]] +**p2Mode** | **character** | Specify the Phase II mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that require the Phase II mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified that do not need the Phase II mode. | [default to "BT_RULE_BASED"] [Enum: [BT_RULE_BASED, P2_RULE_ONLY, COMBINED_RULES]] +**useDB** | **character** | \"Specify if you want to enable the retrieving from database (HMDB) feature.\" | [optional] [default to TRUE] +**bioTransformerSequenceSteps** | [**array[BioTransformerSequenceStep]**](BioTransformerSequenceStep.md) | Specify BioTransformerSequenceSteps to be applied to input structures. MultiStep MetabolicTransformations can only be used as singletons (list size of one). | + + diff --git a/client-api_r/generated/docs/BioTransformerSequenceStep.md b/client-api_r/generated/docs/BioTransformerSequenceStep.md new file mode 100644 index 00000000..ac06c883 --- /dev/null +++ b/client-api_r/generated/docs/BioTransformerSequenceStep.md @@ -0,0 +1,10 @@ +# Rsirius::BioTransformerSequenceStep + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**metabolicTransformation** | **character** | | [optional] [Enum: [PHASE_1_CYP450, EC_BASED, PHASE_2, HUMAN_GUT, ALL_HUMAN, ABIOTIC, HUMAN_CUSTOM_MULTI]] +**iterations** | **integer** | | [optional] + + diff --git a/client-api_r/generated/docs/Compound.md b/client-api_r/generated/docs/Compound.md index 18847339..ffb6681d 100644 --- a/client-api_r/generated/docs/Compound.md +++ b/client-api_r/generated/docs/Compound.md @@ -10,8 +10,9 @@ Name | Type | Description | Notes **rtEndSeconds** | **numeric** | The merged/consensus retention time end (latest rt) of this compound | [optional] **neutralMass** | **numeric** | Neutral mass of this compound. Ion masse minus the mass of the assigned adduct of each feature of this compound should result in the same neutral mass | [optional] **features** | [**array[AlignedFeature]**](AlignedFeature.md) | List of aligned features (adducts) that belong to the same (this) compound | [optional] -**consensusAnnotations** | [**ConsensusAnnotationsCSI**](ConsensusAnnotationsCSI.md) | | [optional] -**consensusAnnotationsDeNovo** | [**ConsensusAnnotationsDeNovo**](ConsensusAnnotationsDeNovo.md) | | [optional] -**customAnnotations** | [**ConsensusAnnotationsCSI**](ConsensusAnnotationsCSI.md) | | [optional] +**consensusAnnotations** | [**ConsensusAnnotationsCSI**](ConsensusAnnotationsCSI.md) | The consensus of the top annotations from all the features of this compound. Null if it was not requested und non-null otherwise. Might contain empty fields if results are not available | [optional] +**consensusAnnotationsDeNovo** | [**ConsensusAnnotationsDeNovo**](ConsensusAnnotationsDeNovo.md) | The consensus of the top de novo annotations from all the features of this compound. Null if it was not requested und non-null otherwise. Might contain empty fields if results are not available | [optional] +**customAnnotations** | [**ConsensusAnnotationsCSI**](ConsensusAnnotationsCSI.md) | Alternative annotations selected by the User. | [optional] +**tags** | [**map(Tag)**](Tag.md) | Key: tagName, value: tag | [optional] diff --git a/client-api_r/generated/docs/CompoundClasses.md b/client-api_r/generated/docs/CompoundClasses.md index 8d1a4877..231fde3f 100644 --- a/client-api_r/generated/docs/CompoundClasses.md +++ b/client-api_r/generated/docs/CompoundClasses.md @@ -5,9 +5,9 @@ Container class that holds the most likely compound class for different levels o ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**npcPathway** | [**CompoundClass**](CompoundClass.md) | | [optional] -**npcSuperclass** | [**CompoundClass**](CompoundClass.md) | | [optional] -**npcClass** | [**CompoundClass**](CompoundClass.md) | | [optional] +**npcPathway** | [**CompoundClass**](CompoundClass.md) | Pathway level NPC class with the highest probability | [optional] +**npcSuperclass** | [**CompoundClass**](CompoundClass.md) | Superclass level NPC class with the highest probability | [optional] +**npcClass** | [**CompoundClass**](CompoundClass.md) | Class level NPC class with the highest probability | [optional] **classyFireLineage** | [**array[CompoundClass]**](CompoundClass.md) | Most likely ClassyFire lineage from ordered from least specific to most specific class classyFireLineage.get(classyFireLineage.size() - 1) gives the most specific ClassyFire compound class annotation | [optional] **classyFireAlternatives** | [**array[CompoundClass]**](CompoundClass.md) | Alternative ClassyFire classes with high probability that do not fit into the linage | [optional] diff --git a/client-api_r/generated/docs/CompoundStatisticsApi.md b/client-api_r/generated/docs/CompoundStatisticsApi.md new file mode 100644 index 00000000..d082f6bc --- /dev/null +++ b/client-api_r/generated/docs/CompoundStatisticsApi.md @@ -0,0 +1,221 @@ +# CompoundStatisticsApi + +All URIs are relative to *http://localhost:8080* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**ComputeCompoundFoldChangesExperimental**](CompoundStatisticsApi.md#ComputeCompoundFoldChangesExperimental) | **PUT** /api/projects/{projectId}/compounds/statistics/foldchange/compute | [EXPERIMENTAL] Compute the fold change between two groups of runs +[**DeleteCompoundFoldChangesExperimental**](CompoundStatisticsApi.md#DeleteCompoundFoldChangesExperimental) | **DELETE** /api/projects/{projectId}/compounds/statistics/foldchanges | [EXPERIMENTAL] Delete fold changes +[**GetCompoundFoldChangeTableExperimental**](CompoundStatisticsApi.md#GetCompoundFoldChangeTableExperimental) | **GET** /api/projects/{projectId}/compounds/statistics/foldchanges/stats-table | [EXPERIMENTAL] Get table of all fold changes in the project space +[**GetFoldChangesByCompoundExperimental**](CompoundStatisticsApi.md#GetFoldChangesByCompoundExperimental) | **GET** /api/projects/{projectId}/compounds/statistics/foldchanges/{objectId} | [EXPERIMENTAL] List all fold changes that are associated with an object + + +# **ComputeCompoundFoldChangesExperimental** +> Job ComputeCompoundFoldChangesExperimental(project_id, left_group_name, right_group_name, aggregation = "AVG", quantification = "APEX_INTENSITY", opt_fields = [progress]) + +[EXPERIMENTAL] Compute the fold change between two groups of runs + +[EXPERIMENTAL] Compute the fold change between two groups of runs.
The runs need to be tagged and grouped.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Compute the fold change between two groups of runs +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to compute the fold change in. +var_left_group_name <- "left_group_name_example" # character | name of the left tag group. +var_right_group_name <- "right_group_name_example" # character | name of the right tag group. +var_aggregation <- "AVG" # character | aggregation type. (Optional) +var_quantification <- "APEX_INTENSITY" # character | quantification type. (Optional) +var_opt_fields <- c("none") # array[character] | job opt fields. (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$ComputeCompoundFoldChangesExperimental(var_project_id, var_left_group_name, var_right_group_name, aggregation = var_aggregation, quantification = var_quantification, opt_fields = var_opt_fieldsdata_file = "result.txt") +result <- api_instance$compound_statistics_api$ComputeCompoundFoldChangesExperimental(var_project_id, var_left_group_name, var_right_group_name, aggregation = var_aggregation, quantification = var_quantification, opt_fields = var_opt_fields) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to compute the fold change in. | + **left_group_name** | **character**| name of the left tag group. | + **right_group_name** | **character**| name of the right tag group. | + **aggregation** | Enum [AVG, MIN, MAX] | aggregation type. | [optional] [default to "AVG"] + **quantification** | Enum [APEX_INTENSITY, AREA_UNDER_CURVE] | quantification type. | [optional] [default to "APEX_INTENSITY"] + **opt_fields** | Enum [none, command, progress, affectedIds] | job opt fields. | [optional] [default to [progress]] + +### Return type + +[**Job**](Job.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + +# **DeleteCompoundFoldChangesExperimental** +> DeleteCompoundFoldChangesExperimental(project_id, left_group_name, right_group_name, aggregation = "AVG", quantification = "APEX_INTENSITY") + +[EXPERIMENTAL] Delete fold changes + +[EXPERIMENTAL] Delete fold changes.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Delete fold changes +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to delete from. +var_left_group_name <- "left_group_name_example" # character | name of the left group. +var_right_group_name <- "right_group_name_example" # character | name of the right group. +var_aggregation <- "AVG" # character | (Optional) +var_quantification <- "APEX_INTENSITY" # character | (Optional) + +api_instance <- rsirius_api$new() +api_instance$compound_statistics_api$DeleteCompoundFoldChangesExperimental(var_project_id, var_left_group_name, var_right_group_name, aggregation = var_aggregation, quantification = var_quantification) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to delete from. | + **left_group_name** | **character**| name of the left group. | + **right_group_name** | **character**| name of the right group. | + **aggregation** | Enum [AVG, MIN, MAX] | | [optional] [default to "AVG"] + **quantification** | Enum [APEX_INTENSITY, AREA_UNDER_CURVE] | | [optional] [default to "APEX_INTENSITY"] + +### 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 | +|-------------|-------------|------------------| +| **200** | OK | - | + +# **GetCompoundFoldChangeTableExperimental** +> StatisticsTable GetCompoundFoldChangeTableExperimental(project_id, aggregation = "AVG", quantification = "APEX_INTENSITY") + +[EXPERIMENTAL] Get table of all fold changes in the project space + +[EXPERIMENTAL] Get table of all fold changes in the project space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Get table of all fold changes in the project space +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to read from. +var_aggregation <- "AVG" # character | aggregation type. (Optional) +var_quantification <- "APEX_INTENSITY" # character | quantification type. (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$GetCompoundFoldChangeTableExperimental(var_project_id, aggregation = var_aggregation, quantification = var_quantificationdata_file = "result.txt") +result <- api_instance$compound_statistics_api$GetCompoundFoldChangeTableExperimental(var_project_id, aggregation = var_aggregation, quantification = var_quantification) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to read from. | + **aggregation** | Enum [AVG, MIN, MAX] | aggregation type. | [optional] [default to "AVG"] + **quantification** | Enum [APEX_INTENSITY, AREA_UNDER_CURVE] | quantification type. | [optional] [default to "APEX_INTENSITY"] + +### Return type + +[**StatisticsTable**](StatisticsTable.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | table of fold changes. | - | + +# **GetFoldChangesByCompoundExperimental** +> array[FoldChange] GetFoldChangesByCompoundExperimental(project_id, object_id) + +[EXPERIMENTAL] List all fold changes that are associated with an object + +[EXPERIMENTAL] List all fold changes that are associated with an object.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] List all fold changes that are associated with an object +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to read from. +var_object_id <- "object_id_example" # character | id of the object the fold changes are assigned to. + +api_instance <- rsirius_api$new() +# to save the result into a file, simply add the optional `data_file` parameter, e.g. +# result <- api_instance$GetFoldChangesByCompoundExperimental(var_project_id, var_object_iddata_file = "result.txt") +result <- api_instance$compound_statistics_api$GetFoldChangesByCompoundExperimental(var_project_id, var_object_id) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to read from. | + **object_id** | **character**| id of the object the fold changes are assigned to. | + +### Return type + +[**array[FoldChange]**](FoldChange.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | fold changes | - | + diff --git a/client-api_r/generated/docs/CompoundsApi.md b/client-api_r/generated/docs/CompoundsApi.md index 451b09b5..3dbf1cd2 100644 --- a/client-api_r/generated/docs/CompoundsApi.md +++ b/client-api_r/generated/docs/CompoundsApi.md @@ -5,15 +5,22 @@ All URIs are relative to *http://localhost:8080* Method | HTTP request | Description ------------- | ------------- | ------------- [**AddCompounds**](CompoundsApi.md#AddCompounds) | **POST** /api/projects/{projectId}/compounds | Import Compounds and its contained features. +[**AddTagsToCompoundExperimental**](CompoundsApi.md#AddTagsToCompoundExperimental) | **PUT** /api/projects/{projectId}/compounds/tags/{compoundId} | [EXPERIMENTAL] Tags with the same name will be overwritten [**DeleteCompound**](CompoundsApi.md#DeleteCompound) | **DELETE** /api/projects/{projectId}/compounds/{compoundId} | Delete compound (group of ion identities) with the given identifier (and the included features) from the specified project-space. [**GetCompound**](CompoundsApi.md#GetCompound) | **GET** /api/projects/{projectId}/compounds/{compoundId} | Get compound (group of ion identities) with the given identifier from the specified project-space. -[**GetCompoundTracesExperimental**](CompoundsApi.md#GetCompoundTracesExperimental) | **GET** /api/projects/{projectId}/compounds/{compoundId}/traces | EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +[**GetCompoundQuantTableExperimental**](CompoundsApi.md#GetCompoundQuantTableExperimental) | **GET** /api/projects/{projectId}/compounds/quant-table | [EXPERIMENTAL] Returns the full quantification table of compounds +[**GetCompoundQuantTableRowExperimental**](CompoundsApi.md#GetCompoundQuantTableRowExperimental) | **GET** /api/projects/{projectId}/compounds/{compoundId}/quant-table-row | [EXPERIMENTAL] Returns a single quantification table row for the given compound +[**GetCompoundTracesExperimental**](CompoundsApi.md#GetCompoundTracesExperimental) | **GET** /api/projects/{projectId}/compounds/{compoundId}/traces | [EXPERIMENTAL] Returns the traces of the given compound [**GetCompounds**](CompoundsApi.md#GetCompounds) | **GET** /api/projects/{projectId}/compounds | List of all available compounds (group of ion identities) in the given project-space. +[**GetCompoundsByGroupExperimental**](CompoundsApi.md#GetCompoundsByGroupExperimental) | **GET** /api/projects/{projectId}/compounds/grouped | [EXPERIMENTAL] Get compounds (group of ion identities) by tag group +[**GetCompoundsByTagExperimental**](CompoundsApi.md#GetCompoundsByTagExperimental) | **GET** /api/projects/{projectId}/compounds/tagged | [EXPERIMENTAL] Get compounds (group of ion identities) by tag [**GetCompoundsPaged**](CompoundsApi.md#GetCompoundsPaged) | **GET** /api/projects/{projectId}/compounds/page | Page of available compounds (group of ion identities) in the given project-space. +[**GetTagsForCompoundExperimental**](CompoundsApi.md#GetTagsForCompoundExperimental) | **GET** /api/projects/{projectId}/compounds/tags/{objectId} | [EXPERIMENTAL] Get all tags associated with this Compound +[**RemoveTagFromCompoundExperimental**](CompoundsApi.md#RemoveTagFromCompoundExperimental) | **DELETE** /api/projects/{projectId}/compounds/tags/{compoundId}/{tagName} | [EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space # **AddCompounds** -> array[Compound] AddCompounds(project_id, compound_import, profile = var.profile, opt_fields = ["none"], opt_fields_features = ["none"]) +> array[Compound] AddCompounds(project_id, compound_import, profile = var.profile, opt_fields = [none], opt_fields_features = [none]) Import Compounds and its contained features. @@ -27,7 +34,7 @@ library(Rsirius) # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to import into. -var_compound_import <- c(CompoundImport$new(c(FeatureImport$new(123, 123, "name_example", "externalFeatureId_example", c("detectedAdducts_example"), 123, 123, 123, "NOT_APPLICABLE", BasicSpectrum$new(c(SimplePeak$new(123, 123)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, 123), c(BasicSpectrum$new(c(SimplePeak$new(..., ...)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, 123)), c(BasicSpectrum$new(c(SimplePeak$new(..., ...)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, 123)))), "name_example")) # array[CompoundImport] | the compound data to be imported +var_compound_import <- c(CompoundImport$new(c(FeatureImport$new(123, 123, "name_example", "externalFeatureId_example", c("detectedAdducts_example"), 123, 123, 123, "NOT_APPLICABLE", BasicSpectrum$new("cosineQuery_example", c(SimplePeak$new(123, 123)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, SimplePeak$new(123, 123), 123, 123, 123, 123, 123), c(BasicSpectrum$new("cosineQuery_example", c(SimplePeak$new(..., ...)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, SimplePeak$new(123, 123), 123, 123, 123, 123, 123)), c(BasicSpectrum$new("cosineQuery_example", c(SimplePeak$new(..., ...)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, SimplePeak$new(123, 123), 123, 123, 123, 123, 123)))), "name_example")) # array[CompoundImport] | the compound data to be imported var_profile <- "profile_example" # character | profile describing the instrument used to measure the data. Used to merge spectra. (Optional) var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' to override defaults. (Optional) var_opt_fields_features <- c("none") # array[character] | set of optional fields of the nested features to be included. Use 'none' to override defaults. (Optional) @@ -46,8 +53,8 @@ Name | Type | Description | Notes **project_id** | **character**| project-space to import into. | **compound_import** | list( [**CompoundImport**](CompoundImport.md) )| the compound data to be imported | **profile** | Enum [QTOF, ORBITRAP] | profile describing the instrument used to measure the data. Used to merge spectra. | [optional] - **opt_fields** | Enum [none, consensusAnnotations, consensusAnnotationsDeNovo, customAnnotations] | set of optional fields to be included. Use 'none' to override defaults. | [optional] [default to ["none"]] - **opt_fields_features** | Enum [none, msData, topAnnotations, topAnnotationsDeNovo, computedTools] | set of optional fields of the nested features to be included. Use 'none' to override defaults. | [optional] [default to ["none"]] + **opt_fields** | Enum [none, consensusAnnotations, consensusAnnotationsDeNovo, customAnnotations, tags] | set of optional fields to be included. Use 'none' to override defaults. | [optional] [default to [none]] + **opt_fields_features** | Enum [none, msData, topAnnotationsSummary, topAnnotations, topAnnotationsDeNovo, computedTools, tags] | set of optional fields of the nested features to be included. Use 'none' to override defaults. | [optional] [default to [none]] ### Return type @@ -67,6 +74,57 @@ No authorization required |-------------|-------------|------------------| | **200** | the Compounds that have been imported with specified optional fields | - | +# **AddTagsToCompoundExperimental** +> array[Tag] AddTagsToCompoundExperimental(project_id, compound_id, tag) + +[EXPERIMENTAL] Tags with the same name will be overwritten + +[EXPERIMENTAL] Tags with the same name will be overwritten.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Tags with the same name will be overwritten +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to add to. +var_compound_id <- "compound_id_example" # character | compound (group of ion identities) to add tags to. +var_tag <- c(Tag$new("tagName_example", TODO)) # array[Tag] | tags to add. + +api_instance <- rsirius_api$new() +# to save the result into a file, simply add the optional `data_file` parameter, e.g. +# result <- api_instance$AddTagsToCompoundExperimental(var_project_id, var_compound_id, var_tagdata_file = "result.txt") +result <- api_instance$compounds_api$AddTagsToCompoundExperimental(var_project_id, var_compound_id, var_tag) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to add to. | + **compound_id** | **character**| compound (group of ion identities) to add tags to. | + **tag** | list( [**Tag**](Tag.md) )| tags to add. | + +### Return type + +[**array[Tag]**](Tag.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | the tags that have been added | - | + # **DeleteCompound** > DeleteCompound(project_id, compound_id) @@ -114,7 +172,7 @@ No authorization required | **200** | OK | - | # **GetCompound** -> Compound GetCompound(project_id, compound_id, opt_fields = ["none"], opt_fields_features = ["none"]) +> Compound GetCompound(project_id, compound_id, ms_data_search_prepared = FALSE, opt_fields = [none], opt_fields_features = [none]) Get compound (group of ion identities) with the given identifier from the specified project-space. @@ -129,13 +187,14 @@ library(Rsirius) # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to read from. var_compound_id <- "compound_id_example" # character | identifier of the compound (group of ion identities) to access. +var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (Optional) var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) var_opt_fields_features <- c("none") # array[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$GetCompound(var_project_id, var_compound_id, opt_fields = var_opt_fields, opt_fields_features = var_opt_fields_featuresdata_file = "result.txt") -result <- api_instance$compounds_api$GetCompound(var_project_id, var_compound_id, opt_fields = var_opt_fields, opt_fields_features = var_opt_fields_features) +# result <- api_instance$GetCompound(var_project_id, var_compound_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields, opt_fields_features = var_opt_fields_featuresdata_file = "result.txt") +result <- api_instance$compounds_api$GetCompound(var_project_id, var_compound_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields, opt_fields_features = var_opt_fields_features) dput(result) ``` @@ -145,8 +204,9 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **character**| project-space to read from. | **compound_id** | **character**| identifier of the compound (group of ion identities) to access. | - **opt_fields** | Enum [none, consensusAnnotations, consensusAnnotationsDeNovo, customAnnotations] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] - **opt_fields_features** | Enum [none, msData, topAnnotations, topAnnotationsDeNovo, computedTools] | | [optional] [default to ["none"]] + **ms_data_search_prepared** | **character**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to FALSE] + **opt_fields** | Enum [none, consensusAnnotations, consensusAnnotationsDeNovo, customAnnotations, tags] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] + **opt_fields_features** | Enum [none, msData, topAnnotationsSummary, topAnnotations, topAnnotationsDeNovo, computedTools, tags] | | [optional] [default to [none]] ### Return type @@ -166,18 +226,118 @@ No authorization required |-------------|-------------|------------------| | **200** | Compounds with additional optional fields (if specified). | - | +# **GetCompoundQuantTableExperimental** +> QuantTableExperimental GetCompoundQuantTableExperimental(project_id, type = "APEX_HEIGHT") + +[EXPERIMENTAL] Returns the full quantification table of compounds + +[EXPERIMENTAL] Returns the full quantification table of compounds.
The quantification table contains a quantification of the features within all runs they are contained in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.* + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Returns the full quantification table of compounds +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to read from. +var_type <- "APEX_HEIGHT" # character | quantification type. (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$GetCompoundQuantTableExperimental(var_project_id, type = var_typedata_file = "result.txt") +result <- api_instance$compounds_api$GetCompoundQuantTableExperimental(var_project_id, type = var_type) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to read from. | + **type** | Enum [APEX_INTENSITY, AREA_UNDER_CURVE] | quantification type. | [optional] [default to "APEX_HEIGHT"] + +### Return type + +[**QuantTableExperimental**](QuantTableExperimental.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + +# **GetCompoundQuantTableRowExperimental** +> QuantTableExperimental GetCompoundQuantTableRowExperimental(project_id, compound_id, type = "APEX_HEIGHT") + +[EXPERIMENTAL] Returns a single quantification table row for the given compound + +[EXPERIMENTAL] Returns a single quantification table row for the given compound.
The quantification table contains a quantification of the feature within all samples it is contained in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.* + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Returns a single quantification table row for the given compound +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to read from. +var_compound_id <- "compound_id_example" # character | compound which should be read out +var_type <- "APEX_HEIGHT" # character | quantification type. (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$GetCompoundQuantTableRowExperimental(var_project_id, var_compound_id, type = var_typedata_file = "result.txt") +result <- api_instance$compounds_api$GetCompoundQuantTableRowExperimental(var_project_id, var_compound_id, type = var_type) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to read from. | + **compound_id** | **character**| compound which should be read out | + **type** | Enum [APEX_INTENSITY, AREA_UNDER_CURVE] | quantification type. | [optional] [default to "APEX_HEIGHT"] + +### Return type + +[**QuantTableExperimental**](QuantTableExperimental.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + # **GetCompoundTracesExperimental** > TraceSetExperimental GetCompoundTracesExperimental(project_id, compound_id, feature_id = "") -EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +[EXPERIMENTAL] Returns the traces of the given compound -Returns the traces of the given compound. A trace consists of m/z and intensity values over the retention time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis, but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data. However, this also means that all traces can be directly compared against each other, as they all lie in the same retention time axis. +[EXPERIMENTAL] Returns the traces of the given compound.
A trace consists of m/z and intensity values over the retention time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis, but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data. However, this also means that all traces can be directly compared against each other, as they all lie in the same retention time axis.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.* ### Example ```R library(Rsirius) -# EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +# [EXPERIMENTAL] Returns the traces of the given compound # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to read from. @@ -218,7 +378,7 @@ No authorization required | **200** | Traces of the given compound. | - | # **GetCompounds** -> array[Compound] GetCompounds(project_id, opt_fields = ["none"], opt_fields_features = ["none"]) +> array[Compound] GetCompounds(project_id, ms_data_search_prepared = FALSE, opt_fields = ["none"], opt_fields_features = ["none"]) List of all available compounds (group of ion identities) in the given project-space. @@ -232,13 +392,14 @@ library(Rsirius) # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to read from. +var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (Optional) var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) var_opt_fields_features <- c("none") # array[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$GetCompounds(var_project_id, opt_fields = var_opt_fields, opt_fields_features = var_opt_fields_featuresdata_file = "result.txt") -result <- api_instance$compounds_api$GetCompounds(var_project_id, opt_fields = var_opt_fields, opt_fields_features = var_opt_fields_features) +# result <- api_instance$GetCompounds(var_project_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields, opt_fields_features = var_opt_fields_featuresdata_file = "result.txt") +result <- api_instance$compounds_api$GetCompounds(var_project_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields, opt_fields_features = var_opt_fields_features) dput(result) ``` @@ -247,8 +408,9 @@ dput(result) Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **character**| project-space to read from. | - **opt_fields** | Enum [none, consensusAnnotations, consensusAnnotationsDeNovo, customAnnotations] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] - **opt_fields_features** | Enum [none, msData, topAnnotations, topAnnotationsDeNovo, computedTools] | | [optional] [default to ["none"]] + **ms_data_search_prepared** | **character**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to FALSE] + **opt_fields** | Enum [none, consensusAnnotations, consensusAnnotationsDeNovo, customAnnotations, tags] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **opt_fields_features** | Enum [none, msData, topAnnotationsSummary, topAnnotations, topAnnotationsDeNovo, computedTools, tags] | | [optional] [default to ["none"]] ### Return type @@ -268,8 +430,122 @@ No authorization required |-------------|-------------|------------------| | **200** | Compounds with additional optional fields (if specified). | - | +# **GetCompoundsByGroupExperimental** +> PagedModelCompound GetCompoundsByGroupExperimental(project_id, group_name, page = 0, size = 20, sort = var.sort, opt_fields = [none]) + +[EXPERIMENTAL] Get compounds (group of ion identities) by tag group + +[EXPERIMENTAL] Get compounds (group of ion identities) by tag group.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Get compounds (group of ion identities) by tag group +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to delete from. +var_group_name <- "group_name_example" # character | tag group name. +var_page <- 0 # integer | Zero-based page index (0..N) (Optional) +var_size <- 20 # integer | The size of the page to be returned (Optional) +var_sort <- c("inner_example") # array[character] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (Optional) +var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (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$GetCompoundsByGroupExperimental(var_project_id, var_group_name, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fieldsdata_file = "result.txt") +result <- api_instance$compounds_api$GetCompoundsByGroupExperimental(var_project_id, var_group_name, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fields) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to delete from. | + **group_name** | **character**| tag group name. | + **page** | **integer**| Zero-based page index (0..N) | [optional] [default to 0] + **size** | **integer**| The size of the page to be returned | [optional] [default to 20] + **sort** | list( **character** )| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] + **opt_fields** | Enum [none, consensusAnnotations, consensusAnnotationsDeNovo, customAnnotations, tags] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] + +### Return type + +[**PagedModelCompound**](PagedModelCompound.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | tagged compounds (group of ion identities) | - | + +# **GetCompoundsByTagExperimental** +> PagedModelCompound GetCompoundsByTagExperimental(project_id, filter = "", page = 0, size = 20, sort = var.sort, opt_fields = []) + +[EXPERIMENTAL] Get compounds (group of ion identities) by tag + +[EXPERIMENTAL] Get compounds (group of ion identities) by tag.
The filter string must contain one or more clauses. A clause is prefÃxed by a field name.
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). Tag name based field need to be prefixed with the namespace tags.. Possible value types of tags are bool, integer, real, text, date, or time - tag value The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.
A clause may be:
tags.MyTagA:sampletags.MyTagA:"Some Text"tags.MyTagA:/[mb]oat/tags.MyTagB<3[ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3] Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )
The syntax allows to build complex filter queries such as:
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
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to delete from. +var_compound_id <- "compound_id_example" # character | compound (group of ion identities) to delete tag from. +var_tag_name <- "tag_name_example" # character | name of the tag to delete. + +api_instance <- rsirius_api$new() +api_instance$compounds_api$RemoveTagFromCompoundExperimental(var_project_id, var_compound_id, var_tag_name) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to delete from. | + **compound_id** | **character**| compound (group of ion identities) to delete tag from. | + **tag_name** | **character**| name of the tag to delete. | + +### 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 | +|-------------|-------------|------------------| +| **200** | OK | - | + diff --git a/client-api_r/generated/docs/ComputedSubtools.md b/client-api_r/generated/docs/ComputedSubtools.md index 2819b4a8..3b797bcc 100644 --- a/client-api_r/generated/docs/ComputedSubtools.md +++ b/client-api_r/generated/docs/ComputedSubtools.md @@ -1,6 +1,5 @@ # Rsirius::ComputedSubtools -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. ## Properties Name | Type | Description | Notes diff --git a/client-api_r/generated/docs/ConsensusAnnotationsCSI.md b/client-api_r/generated/docs/ConsensusAnnotationsCSI.md index a2a8300b..cbc10fc2 100644 --- a/client-api_r/generated/docs/ConsensusAnnotationsCSI.md +++ b/client-api_r/generated/docs/ConsensusAnnotationsCSI.md @@ -5,10 +5,10 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **molecularFormula** | **character** | Molecular formula of the consensus annotation Might be null if no consensus formula is available. | [optional] -**compoundClasses** | [**CompoundClasses**](CompoundClasses.md) | | [optional] +**compoundClasses** | [**CompoundClasses**](CompoundClasses.md) | Compound classes (predicted with CANOPUS) corresponding to the molecularFormula Might be null if no fingerprints or compound classes are available. | [optional] **supportingFeatureIds** | **array[character]** | FeatureIds where the topAnnotation supports this annotation. | [optional] **selectionCriterion** | **character** | Null if this is a custom selection | [optional] [Enum: [MAJORITY_STRUCTURE, CONFIDENCE_STRUCTURE, SINGLETON_STRUCTURE, MAJORITY_FORMULA, TOP_FORMULA, SINGLETON_FORMULA]] -**csiFingerIdStructure** | [**StructureCandidate**](StructureCandidate.md) | | [optional] +**csiFingerIdStructure** | [**StructureCandidate**](StructureCandidate.md) | Database structure candidate (searched with CSI:FingerID), that also defines the molecularFormula Might be null if no consensus structure is available. | [optional] **confidenceExactMatch** | **numeric** | Confidence value that represents the certainty that reported consensus structure is exactly the measured one If multiple features support this consensus structure the maximum confidence is reported | [optional] **confidenceApproxMatch** | **numeric** | Confidence value that represents the certainty that the exact consensus structure or a very similar structure (e.g. measured by Maximum Common Edge Subgraph Distance) is the measured one. If multiple features support this consensus structure the maximum confidence is reported | [optional] diff --git a/client-api_r/generated/docs/ConsensusAnnotationsDeNovo.md b/client-api_r/generated/docs/ConsensusAnnotationsDeNovo.md index 2114f54f..2910257e 100644 --- a/client-api_r/generated/docs/ConsensusAnnotationsDeNovo.md +++ b/client-api_r/generated/docs/ConsensusAnnotationsDeNovo.md @@ -5,7 +5,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **molecularFormula** | **character** | Molecular formula of the consensus annotation Might be null if no consensus formula is available. | [optional] -**compoundClasses** | [**CompoundClasses**](CompoundClasses.md) | | [optional] +**compoundClasses** | [**CompoundClasses**](CompoundClasses.md) | Compound classes (predicted with CANOPUS) corresponding to the molecularFormula Might be null if no fingerprints or compound classes are available. | [optional] **supportingFeatureIds** | **array[character]** | FeatureIds where the topAnnotation supports this annotation. | [optional] **selectionCriterion** | **character** | Criterion that was used to select the consensus annotation. | [optional] [Enum: [MAJORITY_FORMULA, TOP_FORMULA, SINGLETON_FORMULA]] diff --git a/client-api_r/generated/docs/FeatureAnnotations.md b/client-api_r/generated/docs/FeatureAnnotations.md index b6cf1354..de3bdc81 100644 --- a/client-api_r/generated/docs/FeatureAnnotations.md +++ b/client-api_r/generated/docs/FeatureAnnotations.md @@ -5,9 +5,9 @@ Summary of the results of a feature (aligned over runs). Can be added to a Align ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**formulaAnnotation** | [**FormulaCandidate**](FormulaCandidate.md) | | [optional] -**structureAnnotation** | [**StructureCandidateScored**](StructureCandidateScored.md) | | [optional] -**compoundClassAnnotation** | [**CompoundClasses**](CompoundClasses.md) | | [optional] +**formulaAnnotation** | [**FormulaCandidate**](FormulaCandidate.md) | Best matching FormulaCandidate. | [optional] +**structureAnnotation** | [**StructureCandidateScored**](StructureCandidateScored.md) | Best matching StructureCandidate ranked by CSI:FingerID Score over all FormulaCandidates. | [optional] +**compoundClassAnnotation** | [**CompoundClasses**](CompoundClasses.md) | Best matching compound classes that correspond to the formulaAnnotation | [optional] **confidenceExactMatch** | **numeric** | Confidence Score that represents the confidence whether the top hit is correct. | [optional] **confidenceApproxMatch** | **numeric** | Confidence Score that represents the confidence whether the top hit or a very similar hit (estimated by MCES distance) is correct. | [optional] **expansiveSearchState** | **character** | 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) | [optional] [Enum: [OFF, EXACT, APPROXIMATE]] diff --git a/client-api_r/generated/docs/FeatureImport.md b/client-api_r/generated/docs/FeatureImport.md index cc9339e2..67686932 100644 --- a/client-api_r/generated/docs/FeatureImport.md +++ b/client-api_r/generated/docs/FeatureImport.md @@ -14,7 +14,7 @@ Name | Type | Description | Notes **rtEndSeconds** | **numeric** | | [optional] **rtApexSeconds** | **numeric** | | [optional] **dataQuality** | **character** | 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. | [optional] [Enum: [NOT_APPLICABLE, LOWEST, BAD, DECENT, GOOD]] -**mergedMs1** | [**BasicSpectrum**](BasicSpectrum.md) | | [optional] +**mergedMs1** | [**BasicSpectrum**](BasicSpectrum.md) | Merged/Representative MS1 spectrum of this feature that contains the isotope pattern of the precursor ion. Note: 'ms1Spectra' will be ignored if given. | [optional] **ms1Spectra** | [**array[BasicSpectrum]**](BasicSpectrum.md) | List of MS1Spectra belonging to this feature. These spectra will be merged an only a representative mergedMs1 spectrum will be stored in SIRIUS. At least one of these spectra should contain the isotope pattern of the precursor ion. Note: Will be ignored if 'mergedMs1' is given. | [optional] **ms2Spectra** | [**array[BasicSpectrum]**](BasicSpectrum.md) | List of MS/MS spectra that belong to this feature. | [optional] diff --git a/client-api_r/generated/docs/FeatureStatisticsApi.md b/client-api_r/generated/docs/FeatureStatisticsApi.md new file mode 100644 index 00000000..353ace3e --- /dev/null +++ b/client-api_r/generated/docs/FeatureStatisticsApi.md @@ -0,0 +1,221 @@ +# FeatureStatisticsApi + +All URIs are relative to *http://localhost:8080* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**ComputeAlignedFeatureFoldChangesExperimental**](FeatureStatisticsApi.md#ComputeAlignedFeatureFoldChangesExperimental) | **PUT** /api/projects/{projectId}/aligned-features/statistics/foldchange/compute | [EXPERIMENTAL] Compute the fold change between two groups of runs +[**DeleteAlignedFeatureFoldChangesExperimental**](FeatureStatisticsApi.md#DeleteAlignedFeatureFoldChangesExperimental) | **DELETE** /api/projects/{projectId}/aligned-features/statistics/foldchanges | [EXPERIMENTAL] Delete fold changes +[**GetAlignedFeatureFoldChangeTableExperimental**](FeatureStatisticsApi.md#GetAlignedFeatureFoldChangeTableExperimental) | **GET** /api/projects/{projectId}/aligned-features/statistics/foldchanges/stats-table | [EXPERIMENTAL] Get table of all fold changes in the project space +[**GetFoldChangesByAlignedFeatureExperimental**](FeatureStatisticsApi.md#GetFoldChangesByAlignedFeatureExperimental) | **GET** /api/projects/{projectId}/aligned-features/statistics/foldchanges/{objectId} | [EXPERIMENTAL] List all fold changes that are associated with an object + + +# **ComputeAlignedFeatureFoldChangesExperimental** +> Job ComputeAlignedFeatureFoldChangesExperimental(project_id, left_group_name, right_group_name, aggregation = "AVG", quantification = "APEX_INTENSITY", opt_fields = [progress]) + +[EXPERIMENTAL] Compute the fold change between two groups of runs + +[EXPERIMENTAL] Compute the fold change between two groups of runs.
The runs need to be tagged and grouped.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Compute the fold change between two groups of runs +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to compute the fold change in. +var_left_group_name <- "left_group_name_example" # character | name of the left tag group. +var_right_group_name <- "right_group_name_example" # character | name of the right tag group. +var_aggregation <- "AVG" # character | aggregation type. (Optional) +var_quantification <- "APEX_INTENSITY" # character | quantification type. (Optional) +var_opt_fields <- c("none") # array[character] | job opt fields. (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$ComputeAlignedFeatureFoldChangesExperimental(var_project_id, var_left_group_name, var_right_group_name, aggregation = var_aggregation, quantification = var_quantification, opt_fields = var_opt_fieldsdata_file = "result.txt") +result <- api_instance$feature_statistics_api$ComputeAlignedFeatureFoldChangesExperimental(var_project_id, var_left_group_name, var_right_group_name, aggregation = var_aggregation, quantification = var_quantification, opt_fields = var_opt_fields) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to compute the fold change in. | + **left_group_name** | **character**| name of the left tag group. | + **right_group_name** | **character**| name of the right tag group. | + **aggregation** | Enum [AVG, MIN, MAX] | aggregation type. | [optional] [default to "AVG"] + **quantification** | Enum [APEX_INTENSITY, AREA_UNDER_CURVE] | quantification type. | [optional] [default to "APEX_INTENSITY"] + **opt_fields** | Enum [none, command, progress, affectedIds] | job opt fields. | [optional] [default to [progress]] + +### Return type + +[**Job**](Job.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + +# **DeleteAlignedFeatureFoldChangesExperimental** +> DeleteAlignedFeatureFoldChangesExperimental(project_id, left_group_name, right_group_name, aggregation = "AVG", quantification = "APEX_INTENSITY") + +[EXPERIMENTAL] Delete fold changes + +[EXPERIMENTAL] Delete fold changes.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Delete fold changes +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to delete from. +var_left_group_name <- "left_group_name_example" # character | name of the left group. +var_right_group_name <- "right_group_name_example" # character | name of the right group. +var_aggregation <- "AVG" # character | (Optional) +var_quantification <- "APEX_INTENSITY" # character | (Optional) + +api_instance <- rsirius_api$new() +api_instance$feature_statistics_api$DeleteAlignedFeatureFoldChangesExperimental(var_project_id, var_left_group_name, var_right_group_name, aggregation = var_aggregation, quantification = var_quantification) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to delete from. | + **left_group_name** | **character**| name of the left group. | + **right_group_name** | **character**| name of the right group. | + **aggregation** | Enum [AVG, MIN, MAX] | | [optional] [default to "AVG"] + **quantification** | Enum [APEX_INTENSITY, AREA_UNDER_CURVE] | | [optional] [default to "APEX_INTENSITY"] + +### 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 | +|-------------|-------------|------------------| +| **200** | OK | - | + +# **GetAlignedFeatureFoldChangeTableExperimental** +> StatisticsTable GetAlignedFeatureFoldChangeTableExperimental(project_id, aggregation = "AVG", quantification = "APEX_INTENSITY") + +[EXPERIMENTAL] Get table of all fold changes in the project space + +[EXPERIMENTAL] Get table of all fold changes in the project space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Get table of all fold changes in the project space +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to read from. +var_aggregation <- "AVG" # character | aggregation type. (Optional) +var_quantification <- "APEX_INTENSITY" # character | quantification type. (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$GetAlignedFeatureFoldChangeTableExperimental(var_project_id, aggregation = var_aggregation, quantification = var_quantificationdata_file = "result.txt") +result <- api_instance$feature_statistics_api$GetAlignedFeatureFoldChangeTableExperimental(var_project_id, aggregation = var_aggregation, quantification = var_quantification) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to read from. | + **aggregation** | Enum [AVG, MIN, MAX] | aggregation type. | [optional] [default to "AVG"] + **quantification** | Enum [APEX_INTENSITY, AREA_UNDER_CURVE] | quantification type. | [optional] [default to "APEX_INTENSITY"] + +### Return type + +[**StatisticsTable**](StatisticsTable.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | table of fold changes. | - | + +# **GetFoldChangesByAlignedFeatureExperimental** +> array[FoldChange] GetFoldChangesByAlignedFeatureExperimental(project_id, object_id) + +[EXPERIMENTAL] List all fold changes that are associated with an object + +[EXPERIMENTAL] List all fold changes that are associated with an object.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] List all fold changes that are associated with an object +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to read from. +var_object_id <- "object_id_example" # character | id of the object the fold changes are assigned to. + +api_instance <- rsirius_api$new() +# to save the result into a file, simply add the optional `data_file` parameter, e.g. +# result <- api_instance$GetFoldChangesByAlignedFeatureExperimental(var_project_id, var_object_iddata_file = "result.txt") +result <- api_instance$feature_statistics_api$GetFoldChangesByAlignedFeatureExperimental(var_project_id, var_object_id) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to read from. | + **object_id** | **character**| id of the object the fold changes are assigned to. | + +### Return type + +[**array[FoldChange]**](FoldChange.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | fold changes | - | + diff --git a/client-api_r/generated/docs/FeaturesApi.md b/client-api_r/generated/docs/FeaturesApi.md index afca2357..f052fd8b 100644 --- a/client-api_r/generated/docs/FeaturesApi.md +++ b/client-api_r/generated/docs/FeaturesApi.md @@ -5,45 +5,53 @@ All URIs are relative to *http://localhost:8080* Method | HTTP request | Description ------------- | ------------- | ------------- [**AddAlignedFeatures**](FeaturesApi.md#AddAlignedFeatures) | **POST** /api/projects/{projectId}/aligned-features | Import (aligned) features into the project. +[**AddDeNovoStructureCandidate**](FeaturesApi.md#AddDeNovoStructureCandidate) | **PUT** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures | [EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. +[**AddTagsToAlignedFeatureExperimental**](FeaturesApi.md#AddTagsToAlignedFeatureExperimental) | **PUT** /api/projects/{projectId}/aligned-features/tags/{alignedFeatureId} | [EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project [**DeleteAlignedFeature**](FeaturesApi.md#DeleteAlignedFeature) | **DELETE** /api/projects/{projectId}/aligned-features/{alignedFeatureId} | Delete feature (aligned over runs) with the given identifier from the specified project-space. [**DeleteAlignedFeatures**](FeaturesApi.md#DeleteAlignedFeatures) | **PUT** /api/projects/{projectId}/aligned-features/delete | Delete feature (aligned over runs) with the given identifier from the specified project-space. -[**GetAdductNetworkWithMergedTracesExperimental**](FeaturesApi.md#GetAdductNetworkWithMergedTracesExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts | EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +[**GetAdductNetworkWithMergedTracesExperimental**](FeaturesApi.md#GetAdductNetworkWithMergedTracesExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts | [EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network [**GetAlignedFeature**](FeaturesApi.md#GetAlignedFeature) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId} | Get feature (aligned over runs) with the given identifier from the specified project-space. +[**GetAlignedFeatureQualityExperimental**](FeaturesApi.md#GetAlignedFeatureQualityExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report | [EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId) [**GetAlignedFeatures**](FeaturesApi.md#GetAlignedFeatures) | **GET** /api/projects/{projectId}/aligned-features | Get all available features (aligned over runs) in the given project-space. +[**GetAlignedFeaturesByGroupExperimental**](FeaturesApi.md#GetAlignedFeaturesByGroupExperimental) | **GET** /api/projects/{projectId}/aligned-features/grouped | [EXPERIMENTAL] Get features (aligned over runs) by tag group +[**GetAlignedFeaturesByTagExperimental**](FeaturesApi.md#GetAlignedFeaturesByTagExperimental) | **GET** /api/projects/{projectId}/aligned-features/tagged | [EXPERIMENTAL] Get features (aligned over runs) by tag [**GetAlignedFeaturesPaged**](FeaturesApi.md#GetAlignedFeaturesPaged) | **GET** /api/projects/{projectId}/aligned-features/page | Get all available features (aligned over runs) in the given project-space. -[**GetAlignedFeaturesQualityExperimental**](FeaturesApi.md#GetAlignedFeaturesQualityExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report | EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. -[**GetBestMatchingCompoundClasses**](FeaturesApi.md#GetBestMatchingCompoundClasses) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes | Best matching compound classes, Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, +[**GetBestMatchingCompoundClasses**](FeaturesApi.md#GetBestMatchingCompoundClasses) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes | Return Best matching compound classes for given formulaId [**GetCanopusPrediction**](FeaturesApi.md#GetCanopusPrediction) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/canopus-prediction | All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities, [**GetDeNovoStructureCandidates**](FeaturesApi.md#GetDeNovoStructureCandidates) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures | List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. [**GetDeNovoStructureCandidatesByFormula**](FeaturesApi.md#GetDeNovoStructureCandidatesByFormula) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures | List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. [**GetDeNovoStructureCandidatesByFormulaPaged**](FeaturesApi.md#GetDeNovoStructureCandidatesByFormulaPaged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures/page | Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. [**GetDeNovoStructureCandidatesPaged**](FeaturesApi.md#GetDeNovoStructureCandidatesPaged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures/page | Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. -[**GetFingerprintPrediction**](FeaturesApi.md#GetFingerprintPrediction) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint | Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier This fingerprint is used to perform structure database search and predict compound classes. -[**GetFormulaAnnotatedMsMsData**](FeaturesApi.md#GetFormulaAnnotatedMsMsData) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata | Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. -[**GetFormulaAnnotatedSpectrum**](FeaturesApi.md#GetFormulaAnnotatedSpectrum) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum | Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. +[**GetFeatureQuantTableExperimental**](FeaturesApi.md#GetFeatureQuantTableExperimental) | **GET** /api/projects/{projectId}/aligned-features/quant-table | [EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId) +[**GetFingerprintPrediction**](FeaturesApi.md#GetFingerprintPrediction) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint | Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId) +[**GetFormulaAnnotatedMsMsData**](FeaturesApi.md#GetFormulaAnnotatedMsMsData) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata | Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId +[**GetFormulaAnnotatedSpectrum**](FeaturesApi.md#GetFormulaAnnotatedSpectrum) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum | Returns a fragmentation spectrum (e [**GetFormulaCandidate**](FeaturesApi.md#GetFormulaCandidate) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId} | FormulaResultContainers for the given 'formulaId' with minimal information. [**GetFormulaCandidates**](FeaturesApi.md#GetFormulaCandidates) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas | List of FormulaResultContainers available for this feature with minimal information. [**GetFormulaCandidatesPaged**](FeaturesApi.md#GetFormulaCandidatesPaged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/page | Page of FormulaResultContainers available for this feature with minimal information. -[**GetFragTree**](FeaturesApi.md#GetFragTree) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree | Returns fragmentation tree (SIRIUS) for the given formula result identifier This tree is used to rank formula candidates (treeScore). -[**GetIsotopePatternAnnotation**](FeaturesApi.md#GetIsotopePatternAnnotation) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern | Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. -[**GetLipidAnnotation**](FeaturesApi.md#GetLipidAnnotation) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation | Returns Lipid annotation (ElGordo) for the given formula result identifier. +[**GetFragTree**](FeaturesApi.md#GetFragTree) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree | Returns fragmentation tree (SIRIUS) for the given formula result identifier +[**GetIsotopePatternAnnotation**](FeaturesApi.md#GetIsotopePatternAnnotation) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern | Returns Isotope pattern information for given formulaId +[**GetLipidAnnotation**](FeaturesApi.md#GetLipidAnnotation) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation | Returns Lipid annotation (ElGordo) for the given formulaId [**GetMsData**](FeaturesApi.md#GetMsData) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/ms-data | Mass Spec data (input data) for the given 'alignedFeatureId' . -[**GetQuantificationExperimental**](FeaturesApi.md#GetQuantificationExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/quantification | EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. -[**GetSpectralLibraryMatch**](FeaturesApi.md#GetSpectralLibraryMatch) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId} | List of spectral library matches for the given 'alignedFeatureId'. +[**GetQuantTableRowExperimental**](FeaturesApi.md#GetQuantTableRowExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/quant-table-row | [EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId) +[**GetSpectralLibraryMatch**](FeaturesApi.md#GetSpectralLibraryMatch) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId} | Spectral library match for the given 'alignedFeatureId'. [**GetSpectralLibraryMatches**](FeaturesApi.md#GetSpectralLibraryMatches) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches | List of spectral library matches for the given 'alignedFeatureId'. [**GetSpectralLibraryMatchesPaged**](FeaturesApi.md#GetSpectralLibraryMatchesPaged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/page | Page of spectral library matches for the given 'alignedFeatureId'. [**GetSpectralLibraryMatchesSummary**](FeaturesApi.md#GetSpectralLibraryMatchesSummary) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/summary | Summarize matched reference spectra for the given 'alignedFeatureId'. -[**GetStructureAnnotatedMsDataExperimental**](FeaturesApi.md#GetStructureAnnotatedMsDataExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata | EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. -[**GetStructureAnnotatedSpectrumExperimental**](FeaturesApi.md#GetStructureAnnotatedSpectrumExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum | EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. +[**GetStructureAnnotatedMsDataExperimental**](FeaturesApi.md#GetStructureAnnotatedMsDataExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata | [EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey +[**GetStructureAnnotatedSpectralLibraryMatchExperimental**](FeaturesApi.md#GetStructureAnnotatedSpectralLibraryMatchExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}/annotated | [EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations +[**GetStructureAnnotatedSpectrumExperimental**](FeaturesApi.md#GetStructureAnnotatedSpectrumExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum | [EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey [**GetStructureCandidates**](FeaturesApi.md#GetStructureCandidates) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures | List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. [**GetStructureCandidatesByFormula**](FeaturesApi.md#GetStructureCandidatesByFormula) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures | List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. [**GetStructureCandidatesByFormulaPaged**](FeaturesApi.md#GetStructureCandidatesByFormulaPaged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures/page | Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. [**GetStructureCandidatesPaged**](FeaturesApi.md#GetStructureCandidatesPaged) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures/page | Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. -[**GetTracesExperimental**](FeaturesApi.md#GetTracesExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces | EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +[**GetTagsForAlignedFeaturesExperimental**](FeaturesApi.md#GetTagsForAlignedFeaturesExperimental) | **GET** /api/projects/{projectId}/aligned-features/tags/{objectId} | [EXPERIMENTAL] Get all tags associated with this Object +[**GetTracesExperimental**](FeaturesApi.md#GetTracesExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces | [EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId) +[**RemoveTagFromAlignedFeatureExperimental**](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 # **AddAlignedFeatures** -> array[AlignedFeature] AddAlignedFeatures(project_id, feature_import, profile = var.profile, opt_fields = ["none"]) +> array[AlignedFeature] AddAlignedFeatures(project_id, feature_import, profile = var.profile, opt_fields = [none]) Import (aligned) features into the project. @@ -57,7 +65,7 @@ library(Rsirius) # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to import into. -var_feature_import <- c(FeatureImport$new(123, 123, "name_example", "externalFeatureId_example", c("detectedAdducts_example"), 123, 123, 123, "NOT_APPLICABLE", BasicSpectrum$new(c(SimplePeak$new(123, 123)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, 123), c(BasicSpectrum$new(c(SimplePeak$new(123, 123)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, 123)), c(BasicSpectrum$new(c(SimplePeak$new(123, 123)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, 123)))) # array[FeatureImport] | the feature data to be imported +var_feature_import <- c(FeatureImport$new(123, 123, "name_example", "externalFeatureId_example", c("detectedAdducts_example"), 123, 123, 123, "NOT_APPLICABLE", BasicSpectrum$new("cosineQuery_example", c(SimplePeak$new(123, 123)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, SimplePeak$new(123, 123), 123, 123, 123, 123, 123), c(BasicSpectrum$new("cosineQuery_example", c(SimplePeak$new(123, 123)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, SimplePeak$new(123, 123), 123, 123, 123, 123, 123)), c(BasicSpectrum$new("cosineQuery_example", c(SimplePeak$new(123, 123)), "name_example", 123, "collisionEnergy_example", "instrument_example", 123, 123, SimplePeak$new(123, 123), 123, 123, 123, 123, 123)))) # array[FeatureImport] | the feature data to be imported var_profile <- "profile_example" # character | profile describing the instrument used to measure the data. Used to merge spectra. (Optional) var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' to override defaults. (Optional) @@ -75,7 +83,7 @@ Name | Type | Description | Notes **project_id** | **character**| project-space to import into. | **feature_import** | list( [**FeatureImport**](FeatureImport.md) )| the feature data to be imported | **profile** | Enum [QTOF, ORBITRAP] | profile describing the instrument used to measure the data. Used to merge spectra. | [optional] - **opt_fields** | Enum [none, msData, topAnnotations, topAnnotationsDeNovo, computedTools] | set of optional fields to be included. Use 'none' to override defaults. | [optional] [default to ["none"]] + **opt_fields** | Enum [none, msData, topAnnotationsSummary, topAnnotations, topAnnotationsDeNovo, computedTools, tags] | set of optional fields to be included. Use 'none' to override defaults. | [optional] [default to [none]] ### Return type @@ -95,6 +103,108 @@ No authorization required |-------------|-------------|------------------| | **200** | the Features that have been imported with specified optional fields | - | +# **AddDeNovoStructureCandidate** +> array[StructureCandidateFormula] AddDeNovoStructureCandidate(project_id, aligned_feature_id, smiles = "none") + +[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. + +[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. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to read from. +var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the structure candidates belong to. +var_smiles <- "none" # character | smiles (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$AddDeNovoStructureCandidate(var_project_id, var_aligned_feature_id, smiles = var_smilesdata_file = "result.txt") +result <- api_instance$features_api$AddDeNovoStructureCandidate(var_project_id, var_aligned_feature_id, smiles = var_smiles) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to read from. | + **aligned_feature_id** | **character**| feature (aligned over runs) the structure candidates belong to. | + **smiles** | **character**| smiles | [optional] [default to "none"] + +### Return type + +[**array[StructureCandidateFormula]**](StructureCandidateFormula.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | StructureCandidate of this feature candidate with specified optional fields. | - | + +# **AddTagsToAlignedFeatureExperimental** +> array[Tag] AddTagsToAlignedFeatureExperimental(project_id, aligned_feature_id, tag) + +[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project + +[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project. Tags with the same name will be overwritten.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to add to. +var_aligned_feature_id <- "aligned_feature_id_example" # character | run to add tags to. +var_tag <- c(Tag$new("tagName_example", TODO)) # array[Tag] | tags to add. + +api_instance <- rsirius_api$new() +# to save the result into a file, simply add the optional `data_file` parameter, e.g. +# result <- api_instance$AddTagsToAlignedFeatureExperimental(var_project_id, var_aligned_feature_id, var_tagdata_file = "result.txt") +result <- api_instance$features_api$AddTagsToAlignedFeatureExperimental(var_project_id, var_aligned_feature_id, var_tag) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to add to. | + **aligned_feature_id** | **character**| run to add tags to. | + **tag** | list( [**Tag**](Tag.md) )| tags to add. | + +### Return type + +[**array[Tag]**](Tag.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | the tags that have been added | - | + # **DeleteAlignedFeature** > DeleteAlignedFeature(project_id, aligned_feature_id) @@ -190,15 +300,15 @@ No authorization required # **GetAdductNetworkWithMergedTracesExperimental** > TraceSetExperimental GetAdductNetworkWithMergedTracesExperimental(project_id, aligned_feature_id) -EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network -Returns the adduct network for a given aligned feature id together with all merged traces contained in the network. +[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. ### Example ```R library(Rsirius) -# EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +# [EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to read from. @@ -237,7 +347,7 @@ No authorization required | **200** | OK | - | # **GetAlignedFeature** -> AlignedFeature GetAlignedFeature(project_id, aligned_feature_id, opt_fields = ["none"]) +> AlignedFeature GetAlignedFeature(project_id, aligned_feature_id, ms_data_search_prepared = FALSE, opt_fields = [none]) Get feature (aligned over runs) with the given identifier from the specified project-space. @@ -252,12 +362,13 @@ library(Rsirius) # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to read from. var_aligned_feature_id <- "aligned_feature_id_example" # character | identifier of feature (aligned over runs) to access. +var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (Optional) var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (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$GetAlignedFeature(var_project_id, var_aligned_feature_id, opt_fields = var_opt_fieldsdata_file = "result.txt") -result <- api_instance$features_api$GetAlignedFeature(var_project_id, var_aligned_feature_id, opt_fields = var_opt_fields) +# result <- api_instance$GetAlignedFeature(var_project_id, var_aligned_feature_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fieldsdata_file = "result.txt") +result <- api_instance$features_api$GetAlignedFeature(var_project_id, var_aligned_feature_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields) dput(result) ``` @@ -267,7 +378,8 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **character**| project-space to read from. | **aligned_feature_id** | **character**| identifier of feature (aligned over runs) to access. | - **opt_fields** | Enum [none, msData, topAnnotations, topAnnotationsDeNovo, computedTools] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **ms_data_search_prepared** | **character**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to FALSE] + **opt_fields** | Enum [none, msData, topAnnotationsSummary, topAnnotations, topAnnotationsDeNovo, computedTools, tags] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -287,8 +399,57 @@ No authorization required |-------------|-------------|------------------| | **200** | AlignedFeature with additional annotations and MS/MS data (if specified). | - | +# **GetAlignedFeatureQualityExperimental** +> AlignedFeatureQualityExperimental GetAlignedFeatureQualityExperimental(project_id, aligned_feature_id) + +[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId) + +[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)
Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId) +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to read from. +var_aligned_feature_id <- "aligned_feature_id_example" # character | identifier of feature (aligned over runs) to access. + +api_instance <- rsirius_api$new() +# to save the result into a file, simply add the optional `data_file` parameter, e.g. +# result <- api_instance$GetAlignedFeatureQualityExperimental(var_project_id, var_aligned_feature_iddata_file = "result.txt") +result <- api_instance$features_api$GetAlignedFeatureQualityExperimental(var_project_id, var_aligned_feature_id) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to read from. | + **aligned_feature_id** | **character**| identifier of feature (aligned over runs) to access. | + +### Return type + +[**AlignedFeatureQualityExperimental**](AlignedFeatureQualityExperimental.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | AlignedFeatureQuality quality information of the respective feature. | - | + # **GetAlignedFeatures** -> array[AlignedFeature] GetAlignedFeatures(project_id, opt_fields = ["none"]) +> array[AlignedFeature] GetAlignedFeatures(project_id, ms_data_search_prepared = FALSE, opt_fields = [none]) Get all available features (aligned over runs) in the given project-space. @@ -302,12 +463,13 @@ library(Rsirius) # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to read from. +var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (Optional) var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (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$GetAlignedFeatures(var_project_id, opt_fields = var_opt_fieldsdata_file = "result.txt") -result <- api_instance$features_api$GetAlignedFeatures(var_project_id, opt_fields = var_opt_fields) +# result <- api_instance$GetAlignedFeatures(var_project_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fieldsdata_file = "result.txt") +result <- api_instance$features_api$GetAlignedFeatures(var_project_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields) dput(result) ``` @@ -316,7 +478,8 @@ dput(result) Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **character**| project-space to read from. | - **opt_fields** | Enum [none, msData, topAnnotations, topAnnotationsDeNovo, computedTools] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **ms_data_search_prepared** | **character**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to FALSE] + **opt_fields** | Enum [none, msData, topAnnotationsSummary, topAnnotations, topAnnotationsDeNovo, computedTools, tags] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -336,21 +499,22 @@ No authorization required |-------------|-------------|------------------| | **200** | AlignedFeatures with additional annotations and MS/MS data (if specified). | - | -# **GetAlignedFeaturesPaged** -> PagedModelAlignedFeature GetAlignedFeaturesPaged(project_id, page = 0, size = 20, sort = var.sort, opt_fields = ["none"]) +# **GetAlignedFeaturesByGroupExperimental** +> PagedModelAlignedFeature GetAlignedFeaturesByGroupExperimental(project_id, group_name, page = 0, size = 20, sort = var.sort, opt_fields = [none]) -Get all available features (aligned over runs) in the given project-space. +[EXPERIMENTAL] Get features (aligned over runs) by tag group -Get all available features (aligned over runs) in the given project-space. +[EXPERIMENTAL] Get features (aligned over runs) by tag group.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. ### Example ```R library(Rsirius) -# Get all available features (aligned over runs) in the given project-space. +# [EXPERIMENTAL] Get features (aligned over runs) by tag group # # prepare function argument(s) -var_project_id <- "project_id_example" # character | project-space to read from. +var_project_id <- "project_id_example" # character | project-space to delete from. +var_group_name <- "group_name_example" # character | tag group name. var_page <- 0 # integer | Zero-based page index (0..N) (Optional) var_size <- 20 # integer | The size of the page to be returned (Optional) var_sort <- c("inner_example") # array[character] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (Optional) @@ -358,8 +522,8 @@ var_opt_fields <- c("none") # array[character] | set of optional fields to be in api_instance <- rsirius_api$new() # to save the result into a file, simply add the optional `data_file` parameter, e.g. -# result <- api_instance$GetAlignedFeaturesPaged(var_project_id, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fieldsdata_file = "result.txt") -result <- api_instance$features_api$GetAlignedFeaturesPaged(var_project_id, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fields) +# result <- api_instance$GetAlignedFeaturesByGroupExperimental(var_project_id, var_group_name, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fieldsdata_file = "result.txt") +result <- api_instance$features_api$GetAlignedFeaturesByGroupExperimental(var_project_id, var_group_name, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fields) dput(result) ``` @@ -367,11 +531,12 @@ dput(result) Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **project_id** | **character**| project-space to read from. | + **project_id** | **character**| project-space to delete from. | + **group_name** | **character**| tag group name. | **page** | **integer**| Zero-based page index (0..N) | [optional] [default to 0] **size** | **integer**| The size of the page to be returned | [optional] [default to 20] **sort** | list( **character** )| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] - **opt_fields** | Enum [none, msData, topAnnotations, topAnnotationsDeNovo, computedTools] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **opt_fields** | Enum [none, msData, topAnnotationsSummary, topAnnotations, topAnnotationsDeNovo, computedTools, tags] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -389,29 +554,90 @@ No authorization required ### HTTP response details | Status code | Description | Response headers | |-------------|-------------|------------------| -| **200** | AlignedFeatures with additional annotations and MS/MS data (if specified). | - | +| **200** | tagged features (aligned over runs) | - | + +# **GetAlignedFeaturesByTagExperimental** +> PagedModelAlignedFeature GetAlignedFeaturesByTagExperimental(project_id, filter = "", page = 0, size = 20, sort = var.sort, opt_fields = []) + +[EXPERIMENTAL] Get features (aligned over runs) by tag + +[EXPERIMENTAL] Get features (aligned over runs) by tag.
The filter string must contain one or more clauses. A clause is prefÃxed by a field name.
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). Tag name based field need to be prefixed with the namespace tags.. Possible value types of tags are bool, integer, real, text, date, or time - tag value
The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.
A clause may be:
tags.MyTagA:sampletags.MyTagA:"Some Text"tags.MyTagA:/[mb]oat/tags.MyTagB<3[ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3] Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )
The syntax allows to build complex filter queries such as:
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
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Get features (aligned over runs) by tag +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project space to get features (aligned over runs) from. +var_filter <- "" # character | tag filter. (Optional) +var_page <- 0 # integer | Zero-based page index (0..N) (Optional) +var_size <- 20 # integer | The size of the page to be returned (Optional) +var_sort <- c("inner_example") # array[character] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (Optional) +var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (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$GetAlignedFeaturesByTagExperimental(var_project_id, filter = var_filter, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fieldsdata_file = "result.txt") +result <- api_instance$features_api$GetAlignedFeaturesByTagExperimental(var_project_id, filter = var_filter, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fields) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project space to get features (aligned over runs) from. | + **filter** | **character**| tag filter. | [optional] [default to ""] + **page** | **integer**| Zero-based page index (0..N) | [optional] [default to 0] + **size** | **integer**| The size of the page to be returned | [optional] [default to 20] + **sort** | list( **character** )| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] + **opt_fields** | Enum [none, msData, topAnnotationsSummary, topAnnotations, topAnnotationsDeNovo, computedTools, tags] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to []] + +### Return type + +[**PagedModelAlignedFeature**](PagedModelAlignedFeature.md) + +### Authorization + +No authorization required + +### HTTP request headers -# **GetAlignedFeaturesQualityExperimental** -> AlignedFeatureQualityExperimental GetAlignedFeaturesQualityExperimental(project_id, aligned_feature_id) + - **Content-Type**: Not defined + - **Accept**: application/json -EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | tagged features (aligned over runs) | - | -Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space. +# **GetAlignedFeaturesPaged** +> PagedModelAlignedFeature GetAlignedFeaturesPaged(project_id, page = 0, size = 20, sort = var.sort, ms_data_search_prepared = FALSE, opt_fields = [none]) + +Get all available features (aligned over runs) in the given project-space. + +Get all available features (aligned over runs) in the given project-space. ### Example ```R library(Rsirius) -# EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +# Get all available features (aligned over runs) in the given project-space. # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to read from. -var_aligned_feature_id <- "aligned_feature_id_example" # character | identifier of feature (aligned over runs) to access. +var_page <- 0 # integer | Zero-based page index (0..N) (Optional) +var_size <- 20 # integer | The size of the page to be returned (Optional) +var_sort <- c("inner_example") # array[character] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (Optional) +var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (Optional) +var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (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$GetAlignedFeaturesQualityExperimental(var_project_id, var_aligned_feature_iddata_file = "result.txt") -result <- api_instance$features_api$GetAlignedFeaturesQualityExperimental(var_project_id, var_aligned_feature_id) +# result <- api_instance$GetAlignedFeaturesPaged(var_project_id, page = var_page, size = var_size, sort = var_sort, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fieldsdata_file = "result.txt") +result <- api_instance$features_api$GetAlignedFeaturesPaged(var_project_id, page = var_page, size = var_size, sort = var_sort, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields) dput(result) ``` @@ -420,11 +646,15 @@ dput(result) Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **character**| project-space to read from. | - **aligned_feature_id** | **character**| identifier of feature (aligned over runs) to access. | + **page** | **integer**| Zero-based page index (0..N) | [optional] [default to 0] + **size** | **integer**| The size of the page to be returned | [optional] [default to 20] + **sort** | list( **character** )| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] + **ms_data_search_prepared** | **character**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to FALSE] + **opt_fields** | Enum [none, msData, topAnnotationsSummary, topAnnotations, topAnnotationsDeNovo, computedTools, tags] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type -[**AlignedFeatureQualityExperimental**](AlignedFeatureQualityExperimental.md) +[**PagedModelAlignedFeature**](PagedModelAlignedFeature.md) ### Authorization @@ -438,20 +668,20 @@ No authorization required ### HTTP response details | Status code | Description | Response headers | |-------------|-------------|------------------| -| **200** | AlignedFeatureQuality quality information of the respective feature. | - | +| **200** | AlignedFeatures with additional annotations and MS/MS data (if specified). | - | # **GetBestMatchingCompoundClasses** > CompoundClasses GetBestMatchingCompoundClasses(project_id, aligned_feature_id, formula_id) -Best matching compound classes, Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, +Return Best matching compound classes for given formulaId -Best matching compound classes, Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, +Return Best matching compound classes for given formulaId.
Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, ### Example ```R library(Rsirius) -# Best matching compound classes, Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology, +# Return Best matching compound classes for given formulaId # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to read from. @@ -573,7 +803,7 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **character**| project-space to read from. | **aligned_feature_id** | **character**| feature (aligned over runs) the structure candidates belong to. | - **opt_fields** | Enum [none, fingerprint, dbLinks, libraryMatches] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **opt_fields** | Enum [none, fingerprint, dbLinks, libraryMatches, structureSvg] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] ### Return type @@ -594,7 +824,7 @@ No authorization required | **200** | StructureCandidate of this feature (aligned over runs) candidate with specified optional fields. | - | # **GetDeNovoStructureCandidatesByFormula** -> array[StructureCandidateScored] GetDeNovoStructureCandidatesByFormula(project_id, aligned_feature_id, formula_id, opt_fields = ["none"]) +> array[StructureCandidateScored] GetDeNovoStructureCandidatesByFormula(project_id, aligned_feature_id, formula_id, opt_fields = [none]) List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. @@ -626,7 +856,7 @@ Name | Type | Description | Notes **project_id** | **character**| project-space to read from. | **aligned_feature_id** | **character**| feature (aligned over runs) the formula result belongs to. | **formula_id** | **character**| identifier of the requested formula result | - **opt_fields** | Enum [none, fingerprint, dbLinks, libraryMatches] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **opt_fields** | Enum [none, fingerprint, dbLinks, libraryMatches, structureSvg] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -647,7 +877,7 @@ No authorization required | **200** | StructureCandidate of this formula candidate with specified optional fields. | - | # **GetDeNovoStructureCandidatesByFormulaPaged** -> PagedModelStructureCandidateScored GetDeNovoStructureCandidatesByFormulaPaged(project_id, aligned_feature_id, formula_id, page = 0, size = 20, sort = var.sort, opt_fields = ["none"]) +> PagedModelStructureCandidateScored GetDeNovoStructureCandidatesByFormulaPaged(project_id, aligned_feature_id, formula_id, page = 0, size = 20, sort = var.sort, opt_fields = [none]) Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. @@ -685,7 +915,7 @@ Name | Type | Description | Notes **page** | **integer**| Zero-based page index (0..N) | [optional] [default to 0] **size** | **integer**| The size of the page to be returned | [optional] [default to 20] **sort** | list( **character** )| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] - **opt_fields** | Enum [none, fingerprint, dbLinks, libraryMatches] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **opt_fields** | Enum [none, fingerprint, dbLinks, libraryMatches, structureSvg] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -706,7 +936,7 @@ No authorization required | **200** | StructureCandidate of this formula candidate with specified optional fields. | - | # **GetDeNovoStructureCandidatesPaged** -> PagedModelStructureCandidateFormula GetDeNovoStructureCandidatesPaged(project_id, aligned_feature_id, page = 0, size = 20, sort = var.sort, opt_fields = ["none"]) +> PagedModelStructureCandidateFormula GetDeNovoStructureCandidatesPaged(project_id, aligned_feature_id, page = 0, size = 20, sort = var.sort, opt_fields = [none]) Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. StructureCandidates can be enriched with molecular fingerprint. @@ -742,7 +972,7 @@ Name | Type | Description | Notes **page** | **integer**| Zero-based page index (0..N) | [optional] [default to 0] **size** | **integer**| The size of the page to be returned | [optional] [default to 20] **sort** | list( **character** )| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] - **opt_fields** | Enum [none, fingerprint, dbLinks, libraryMatches] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **opt_fields** | Enum [none, fingerprint, dbLinks, libraryMatches, structureSvg] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -762,18 +992,67 @@ No authorization required |-------------|-------------|------------------| | **200** | StructureCandidate of this feature (aligned over runs) candidate with specified optional fields. | - | +# **GetFeatureQuantTableExperimental** +> QuantTableExperimental GetFeatureQuantTableExperimental(project_id, type = "APEX_HEIGHT") + +[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId) + +[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId).
Returns the full quantification table. The quantification table contains a quantities of the features within all runs they are contained in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId) +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to read from. +var_type <- "APEX_HEIGHT" # character | quantification type. (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$GetFeatureQuantTableExperimental(var_project_id, type = var_typedata_file = "result.txt") +result <- api_instance$features_api$GetFeatureQuantTableExperimental(var_project_id, type = var_type) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to read from. | + **type** | Enum [APEX_INTENSITY, AREA_UNDER_CURVE] | quantification type. | [optional] [default to "APEX_HEIGHT"] + +### Return type + +[**QuantTableExperimental**](QuantTableExperimental.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | Quant table if akk feature in this project | - | + # **GetFingerprintPrediction** > array[numeric] GetFingerprintPrediction(project_id, aligned_feature_id, formula_id) -Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier This fingerprint is used to perform structure database search and predict compound classes. +Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId) -Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier This fingerprint is used to perform structure database search and predict compound classes. +Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)
This fingerprint is used to perform structure database search and predict compound classes. ### Example ```R library(Rsirius) -# Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier This fingerprint is used to perform structure database search and predict compound classes. +# Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId) # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to read from. @@ -814,27 +1093,28 @@ No authorization required | **200** | probabilistic fingerprint predicted by CSI:FingerID | - | # **GetFormulaAnnotatedMsMsData** -> AnnotatedMsMsData GetFormulaAnnotatedMsMsData(project_id, aligned_feature_id, formula_id) +> AnnotatedMsMsData GetFormulaAnnotatedMsMsData(project_id, aligned_feature_id, formula_id, ms_data_search_prepared = FALSE) -Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. +Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId -Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. +Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId.
Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. ### Example ```R library(Rsirius) -# Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree and the structure candidate are available. +# Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to read from. var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the formula result belongs to. var_formula_id <- "formula_id_example" # character | identifier of the requested formula result +var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (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$GetFormulaAnnotatedMsMsData(var_project_id, var_aligned_feature_id, var_formula_iddata_file = "result.txt") -result <- api_instance$features_api$GetFormulaAnnotatedMsMsData(var_project_id, var_aligned_feature_id, var_formula_id) +# result <- api_instance$GetFormulaAnnotatedMsMsData(var_project_id, var_aligned_feature_id, var_formula_id, ms_data_search_prepared = var_ms_data_search_prepareddata_file = "result.txt") +result <- api_instance$features_api$GetFormulaAnnotatedMsMsData(var_project_id, var_aligned_feature_id, var_formula_id, ms_data_search_prepared = var_ms_data_search_prepared) dput(result) ``` @@ -845,6 +1125,7 @@ Name | Type | Description | Notes **project_id** | **character**| project-space to read from. | **aligned_feature_id** | **character**| feature (aligned over runs) the formula result belongs to. | **formula_id** | **character**| identifier of the requested formula result | + **ms_data_search_prepared** | **character**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to FALSE] ### Return type @@ -865,28 +1146,29 @@ No authorization required | **200** | Fragmentation spectra annotated with fragment formulas and losses. | - | # **GetFormulaAnnotatedSpectrum** -> AnnotatedSpectrum GetFormulaAnnotatedSpectrum(project_id, aligned_feature_id, formula_id, spectrum_index = -1) +> AnnotatedSpectrum GetFormulaAnnotatedSpectrum(project_id, aligned_feature_id, formula_id, spectrum_index = -1, search_prepared = FALSE) -Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. +Returns a fragmentation spectrum (e -Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. +Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier
These annotations are only available if a fragmentation tree is available. ### Example ```R library(Rsirius) -# Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. +# Returns a fragmentation spectrum (e # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to read from. var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the formula result belongs to. var_formula_id <- "formula_id_example" # character | identifier of the requested formula result var_spectrum_index <- -1 # integer | index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) (Optional) +var_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (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$GetFormulaAnnotatedSpectrum(var_project_id, var_aligned_feature_id, var_formula_id, spectrum_index = var_spectrum_indexdata_file = "result.txt") -result <- api_instance$features_api$GetFormulaAnnotatedSpectrum(var_project_id, var_aligned_feature_id, var_formula_id, spectrum_index = var_spectrum_index) +# result <- api_instance$GetFormulaAnnotatedSpectrum(var_project_id, var_aligned_feature_id, var_formula_id, spectrum_index = var_spectrum_index, search_prepared = var_search_prepareddata_file = "result.txt") +result <- api_instance$features_api$GetFormulaAnnotatedSpectrum(var_project_id, var_aligned_feature_id, var_formula_id, spectrum_index = var_spectrum_index, search_prepared = var_search_prepared) dput(result) ``` @@ -898,6 +1180,7 @@ Name | Type | Description | Notes **aligned_feature_id** | **character**| feature (aligned over runs) the formula result belongs to. | **formula_id** | **character**| identifier of the requested formula result | **spectrum_index** | **integer**| index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) | [optional] [default to -1] + **search_prepared** | **character**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to FALSE] ### Return type @@ -918,7 +1201,7 @@ No authorization required | **200** | Fragmentation spectrum annotated with fragment formulas and losses. | - | # **GetFormulaCandidate** -> FormulaCandidate GetFormulaCandidate(project_id, aligned_feature_id, formula_id, opt_fields = ["none"]) +> FormulaCandidate GetFormulaCandidate(project_id, aligned_feature_id, formula_id, ms_data_search_prepared = FALSE, opt_fields = [none]) FormulaResultContainers for the given 'formulaId' with minimal information. @@ -934,12 +1217,13 @@ library(Rsirius) var_project_id <- "project_id_example" # character | project-space to read from. var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the formula result belongs to. var_formula_id <- "formula_id_example" # character | identifier of the requested formula result +var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (Optional) var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (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$GetFormulaCandidate(var_project_id, var_aligned_feature_id, var_formula_id, opt_fields = var_opt_fieldsdata_file = "result.txt") -result <- api_instance$features_api$GetFormulaCandidate(var_project_id, var_aligned_feature_id, var_formula_id, opt_fields = var_opt_fields) +# result <- api_instance$GetFormulaCandidate(var_project_id, var_aligned_feature_id, var_formula_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fieldsdata_file = "result.txt") +result <- api_instance$features_api$GetFormulaCandidate(var_project_id, var_aligned_feature_id, var_formula_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields) dput(result) ``` @@ -950,7 +1234,8 @@ Name | Type | Description | Notes **project_id** | **character**| project-space to read from. | **aligned_feature_id** | **character**| feature (aligned over runs) the formula result belongs to. | **formula_id** | **character**| identifier of the requested formula result | - **opt_fields** | Enum [none, statistics, fragmentationTree, annotatedSpectrum, isotopePattern, lipidAnnotation, predictedFingerprint, compoundClasses, canopusPredictions] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **ms_data_search_prepared** | **character**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to FALSE] + **opt_fields** | Enum [none, statistics, fragmentationTree, annotatedSpectrum, isotopePattern, lipidAnnotation, predictedFingerprint, compoundClasses, canopusPredictions] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -971,7 +1256,7 @@ No authorization required | **200** | FormulaCandidate of this feature (aligned over runs) with. | - | # **GetFormulaCandidates** -> array[FormulaCandidate] GetFormulaCandidates(project_id, aligned_feature_id, opt_fields = ["none"]) +> array[FormulaCandidate] GetFormulaCandidates(project_id, aligned_feature_id, ms_data_search_prepared = FALSE, opt_fields = ["none"]) List of FormulaResultContainers available for this feature with minimal information. @@ -986,12 +1271,13 @@ library(Rsirius) # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to read from. var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the formula result belongs to. +var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (Optional) var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (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$GetFormulaCandidates(var_project_id, var_aligned_feature_id, opt_fields = var_opt_fieldsdata_file = "result.txt") -result <- api_instance$features_api$GetFormulaCandidates(var_project_id, var_aligned_feature_id, opt_fields = var_opt_fields) +# result <- api_instance$GetFormulaCandidates(var_project_id, var_aligned_feature_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fieldsdata_file = "result.txt") +result <- api_instance$features_api$GetFormulaCandidates(var_project_id, var_aligned_feature_id, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields) dput(result) ``` @@ -1001,6 +1287,7 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **character**| project-space to read from. | **aligned_feature_id** | **character**| feature (aligned over runs) the formula result belongs to. | + **ms_data_search_prepared** | **character**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to FALSE] **opt_fields** | Enum [none, statistics, fragmentationTree, annotatedSpectrum, isotopePattern, lipidAnnotation, predictedFingerprint, compoundClasses, canopusPredictions] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] ### Return type @@ -1022,7 +1309,7 @@ No authorization required | **200** | All FormulaCandidate of this feature with. | - | # **GetFormulaCandidatesPaged** -> PagedModelFormulaCandidate GetFormulaCandidatesPaged(project_id, aligned_feature_id, page = 0, size = 20, sort = var.sort, opt_fields = ["none"]) +> PagedModelFormulaCandidate GetFormulaCandidatesPaged(project_id, aligned_feature_id, page = 0, size = 20, sort = var.sort, ms_data_search_prepared = FALSE, opt_fields = [none]) Page of FormulaResultContainers available for this feature with minimal information. @@ -1040,12 +1327,13 @@ var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (al var_page <- 0 # integer | Zero-based page index (0..N) (Optional) var_size <- 20 # integer | The size of the page to be returned (Optional) var_sort <- c("inner_example") # array[character] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (Optional) +var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (Optional) var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (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$GetFormulaCandidatesPaged(var_project_id, var_aligned_feature_id, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fieldsdata_file = "result.txt") -result <- api_instance$features_api$GetFormulaCandidatesPaged(var_project_id, var_aligned_feature_id, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fields) +# result <- api_instance$GetFormulaCandidatesPaged(var_project_id, var_aligned_feature_id, page = var_page, size = var_size, sort = var_sort, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fieldsdata_file = "result.txt") +result <- api_instance$features_api$GetFormulaCandidatesPaged(var_project_id, var_aligned_feature_id, page = var_page, size = var_size, sort = var_sort, ms_data_search_prepared = var_ms_data_search_prepared, opt_fields = var_opt_fields) dput(result) ``` @@ -1058,7 +1346,8 @@ Name | Type | Description | Notes **page** | **integer**| Zero-based page index (0..N) | [optional] [default to 0] **size** | **integer**| The size of the page to be returned | [optional] [default to 20] **sort** | list( **character** )| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] - **opt_fields** | Enum [none, statistics, fragmentationTree, annotatedSpectrum, isotopePattern, lipidAnnotation, predictedFingerprint, compoundClasses, canopusPredictions] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **ms_data_search_prepared** | **character**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to FALSE] + **opt_fields** | Enum [none, statistics, fragmentationTree, annotatedSpectrum, isotopePattern, lipidAnnotation, predictedFingerprint, compoundClasses, canopusPredictions] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -1081,15 +1370,15 @@ No authorization required # **GetFragTree** > FragmentationTree GetFragTree(project_id, aligned_feature_id, formula_id) -Returns fragmentation tree (SIRIUS) for the given formula result identifier This tree is used to rank formula candidates (treeScore). +Returns fragmentation tree (SIRIUS) for the given formula result identifier -Returns fragmentation tree (SIRIUS) for the given formula result identifier This tree is used to rank formula candidates (treeScore). +Returns fragmentation tree (SIRIUS) for the given formula result identifier
This tree is used to rank formula candidates (treeScore). ### Example ```R library(Rsirius) -# Returns fragmentation tree (SIRIUS) for the given formula result identifier This tree is used to rank formula candidates (treeScore). +# Returns fragmentation tree (SIRIUS) for the given formula result identifier # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to read from. @@ -1132,15 +1421,15 @@ No authorization required # **GetIsotopePatternAnnotation** > IsotopePatternAnnotation GetIsotopePatternAnnotation(project_id, aligned_feature_id, formula_id) -Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. +Returns Isotope pattern information for given formulaId -Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore). +Returns Isotope pattern information for given formulaId
Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore). ### Example ```R library(Rsirius) -# Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting) for the given formula result identifier. +# Returns Isotope pattern information for given formulaId # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to read from. @@ -1183,15 +1472,15 @@ No authorization required # **GetLipidAnnotation** > LipidAnnotation GetLipidAnnotation(project_id, aligned_feature_id, formula_id) -Returns Lipid annotation (ElGordo) for the given formula result identifier. +Returns Lipid annotation (ElGordo) for the given formulaId -Returns Lipid annotation (ElGordo) for the given formula result identifier. ElGordo lipid annotation runs as part of the SIRIUS formula identification step. +Returns Lipid annotation (ElGordo) for the given formulaId.
ElGordo lipid annotation runs as part of the SIRIUS formula identification step. ### Example ```R library(Rsirius) -# Returns Lipid annotation (ElGordo) for the given formula result identifier. +# Returns Lipid annotation (ElGordo) for the given formulaId # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to read from. @@ -1232,7 +1521,7 @@ No authorization required | **200** | LipidAnnotation | - | # **GetMsData** -> MsData GetMsData(project_id, aligned_feature_id) +> MsData GetMsData(project_id, aligned_feature_id, ms_data_search_prepared = FALSE) Mass Spec data (input data) for the given 'alignedFeatureId' . @@ -1246,12 +1535,13 @@ library(Rsirius) # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to read from. -var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the Mass Spec data belong sto. +var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the Mass Spec data belongs to. +var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (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$GetMsData(var_project_id, var_aligned_feature_iddata_file = "result.txt") -result <- api_instance$features_api$GetMsData(var_project_id, var_aligned_feature_id) +# result <- api_instance$GetMsData(var_project_id, var_aligned_feature_id, ms_data_search_prepared = var_ms_data_search_prepareddata_file = "result.txt") +result <- api_instance$features_api$GetMsData(var_project_id, var_aligned_feature_id, ms_data_search_prepared = var_ms_data_search_prepared) dput(result) ``` @@ -1260,7 +1550,8 @@ dput(result) Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **character**| project-space to read from. | - **aligned_feature_id** | **character**| feature (aligned over runs) the Mass Spec data belong sto. | + **aligned_feature_id** | **character**| feature (aligned over runs) the Mass Spec data belongs to. | + **ms_data_search_prepared** | **character**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to FALSE] ### Return type @@ -1280,28 +1571,28 @@ No authorization required |-------------|-------------|------------------| | **200** | Mass Spec data of this feature (aligned over runs). | - | -# **GetQuantificationExperimental** -> QuantificationTableExperimental GetQuantificationExperimental(project_id, aligned_feature_id, type = "APEX_HEIGHT") +# **GetQuantTableRowExperimental** +> QuantTableExperimental GetQuantTableRowExperimental(project_id, aligned_feature_id, type = "APEX_HEIGHT") -EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId) -Returns a single quantification table row for the given feature. The quantification table contains the intensity of the feature within all samples it is contained in. +[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId).
The quantification table contains a quantity of the feature within all samples it is contained in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. ### Example ```R library(Rsirius) -# EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +# [EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId) # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to read from. -var_aligned_feature_id <- "aligned_feature_id_example" # character | feature which intensities should be read out +var_aligned_feature_id <- "aligned_feature_id_example" # character | feature which quantity should be read out var_type <- "APEX_HEIGHT" # character | quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex. (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$GetQuantificationExperimental(var_project_id, var_aligned_feature_id, type = var_typedata_file = "result.txt") -result <- api_instance$features_api$GetQuantificationExperimental(var_project_id, var_aligned_feature_id, type = var_type) +# result <- api_instance$GetQuantTableRowExperimental(var_project_id, var_aligned_feature_id, type = var_typedata_file = "result.txt") +result <- api_instance$features_api$GetQuantTableRowExperimental(var_project_id, var_aligned_feature_id, type = var_type) dput(result) ``` @@ -1310,12 +1601,12 @@ dput(result) Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **character**| project-space to read from. | - **aligned_feature_id** | **character**| feature which intensities should be read out | - **type** | Enum [APEX_HEIGHT] | quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex. | [optional] [default to "APEX_HEIGHT"] + **aligned_feature_id** | **character**| feature which quantity should be read out | + **type** | Enum [APEX_INTENSITY, AREA_UNDER_CURVE] | quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex. | [optional] [default to "APEX_HEIGHT"] ### Return type -[**QuantificationTableExperimental**](QuantificationTableExperimental.md) +[**QuantTableExperimental**](QuantTableExperimental.md) ### Authorization @@ -1332,22 +1623,22 @@ No authorization required | **200** | Quant table row for this feature | - | # **GetSpectralLibraryMatch** -> SpectralLibraryMatch GetSpectralLibraryMatch(project_id, aligned_feature_id, match_id, opt_fields = ["none"]) +> SpectralLibraryMatch GetSpectralLibraryMatch(project_id, aligned_feature_id, match_id, opt_fields = [none]) -List of spectral library matches for the given 'alignedFeatureId'. +Spectral library match for the given 'alignedFeatureId'. -List of spectral library matches for the given 'alignedFeatureId'. +Spectral library match for the given 'alignedFeatureId'. ### Example ```R library(Rsirius) -# List of spectral library matches for the given 'alignedFeatureId'. +# Spectral library match for the given 'alignedFeatureId'. # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to read from. var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the structure candidates belong to. -var_match_id <- "match_id_example" # character | +var_match_id <- "match_id_example" # character | id of the library match to be returned. var_opt_fields <- c("none") # array[character] | (Optional) api_instance <- rsirius_api$new() @@ -1363,8 +1654,8 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **character**| project-space to read from. | **aligned_feature_id** | **character**| feature (aligned over runs) the structure candidates belong to. | - **match_id** | **character**| | - **opt_fields** | Enum [none, referenceSpectrum] | | [optional] [default to ["none"]] + **match_id** | **character**| id of the library match to be returned. | + **opt_fields** | Enum [none, referenceSpectrum] | | [optional] [default to [none]] ### Return type @@ -1382,7 +1673,7 @@ No authorization required ### HTTP response details | Status code | Description | Response headers | |-------------|-------------|------------------| -| **200** | Spectral library matches of this feature (aligned over runs). | - | +| **200** | Spectral library match with requested mathcId. | - | # **GetSpectralLibraryMatches** > array[SpectralLibraryMatch] GetSpectralLibraryMatches(project_id, aligned_feature_id, min_shared_peaks = 1, min_similarity = 0.2, inchi_key = "", opt_fields = ["none"]) @@ -1442,7 +1733,7 @@ No authorization required | **200** | Spectral library matches of this feature (aligned over runs). | - | # **GetSpectralLibraryMatchesPaged** -> PagedModelSpectralLibraryMatch GetSpectralLibraryMatchesPaged(project_id, aligned_feature_id, page = 0, size = 20, sort = var.sort, min_shared_peaks = 1, min_similarity = 0.2, inchi_key = "", opt_fields = ["none"]) +> PagedModelSpectralLibraryMatch GetSpectralLibraryMatchesPaged(project_id, aligned_feature_id, page = 0, size = 20, sort = var.sort, min_shared_peaks = 1, min_similarity = 0.2, inchi_key = "", opt_fields = [none]) Page of spectral library matches for the given 'alignedFeatureId'. @@ -1484,7 +1775,7 @@ Name | Type | Description | Notes **min_shared_peaks** | **integer**| | [optional] [default to 1] **min_similarity** | **numeric**| | [optional] [default to 0.2] **inchi_key** | **character**| | [optional] [default to ""] - **opt_fields** | Enum [none, referenceSpectrum] | | [optional] [default to ["none"]] + **opt_fields** | Enum [none, referenceSpectrum] | | [optional] [default to [none]] ### Return type @@ -1560,28 +1851,29 @@ No authorization required | **200** | Summary object with best match, number of spectral library matches, matched reference spectra and matched database compounds of this feature (aligned over runs). | - | # **GetStructureAnnotatedMsDataExperimental** -> AnnotatedMsMsData GetStructureAnnotatedMsDataExperimental(project_id, aligned_feature_id, formula_id, inchi_key) +> AnnotatedMsMsData GetStructureAnnotatedMsDataExperimental(project_id, aligned_feature_id, formula_id, inchi_key, ms_data_search_prepared = FALSE) -EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. +[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey -Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses for the given formula result identifier and structure candidate inChIKey. These annotations are only available if a fragmentation tree and the structure candidate are available. +[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey.
Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses for the given formula result identifier and structure candidate inChIKey. These annotations are only available if a fragmentation tree and the structure candidate are available.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. ### Example ```R library(Rsirius) -# EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. +# [EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to read from. var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the formula result belongs to. var_formula_id <- "formula_id_example" # character | identifier of the requested formula result var_inchi_key <- "inchi_key_example" # character | 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation +var_ms_data_search_prepared <- FALSE # character | Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. (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$GetStructureAnnotatedMsDataExperimental(var_project_id, var_aligned_feature_id, var_formula_id, var_inchi_keydata_file = "result.txt") -result <- api_instance$features_api$GetStructureAnnotatedMsDataExperimental(var_project_id, var_aligned_feature_id, var_formula_id, var_inchi_key) +# result <- api_instance$GetStructureAnnotatedMsDataExperimental(var_project_id, var_aligned_feature_id, var_formula_id, var_inchi_key, ms_data_search_prepared = var_ms_data_search_prepareddata_file = "result.txt") +result <- api_instance$features_api$GetStructureAnnotatedMsDataExperimental(var_project_id, var_aligned_feature_id, var_formula_id, var_inchi_key, ms_data_search_prepared = var_ms_data_search_prepared) dput(result) ``` @@ -1593,6 +1885,7 @@ Name | Type | Description | Notes **aligned_feature_id** | **character**| feature (aligned over runs) the formula result belongs to. | **formula_id** | **character**| identifier of the requested formula result | **inchi_key** | **character**| 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation | + **ms_data_search_prepared** | **character**| Returns all fragment spectra in a preprocessed form as used for fast Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch peak assignments and reference spectra. | [optional] [default to FALSE] ### Return type @@ -1612,18 +1905,69 @@ No authorization required |-------------|-------------|------------------| | **200** | Fragmentation spectrum annotated with fragments and sub-structures. | - | +# **GetStructureAnnotatedSpectralLibraryMatchExperimental** +> AnnotatedSpectrum GetStructureAnnotatedSpectralLibraryMatchExperimental(project_id, aligned_feature_id, match_id) + +[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations + +[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to read from. +var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) the structure candidates belong to. +var_match_id <- "match_id_example" # character | id of the library match to be returned. + +api_instance <- rsirius_api$new() +# to save the result into a file, simply add the optional `data_file` parameter, e.g. +# result <- api_instance$GetStructureAnnotatedSpectralLibraryMatchExperimental(var_project_id, var_aligned_feature_id, var_match_iddata_file = "result.txt") +result <- api_instance$features_api$GetStructureAnnotatedSpectralLibraryMatchExperimental(var_project_id, var_aligned_feature_id, var_match_id) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to read from. | + **aligned_feature_id** | **character**| feature (aligned over runs) the structure candidates belong to. | + **match_id** | **character**| id of the library match to be returned. | + +### Return type + +[**AnnotatedSpectrum**](AnnotatedSpectrum.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | Spectral library match with requested mathcId. | - | + # **GetStructureAnnotatedSpectrumExperimental** -> AnnotatedSpectrum GetStructureAnnotatedSpectrumExperimental(project_id, aligned_feature_id, formula_id, inchi_key, spectrum_index = -1) +> AnnotatedSpectrum GetStructureAnnotatedSpectrumExperimental(project_id, aligned_feature_id, formula_id, inchi_key, spectrum_index = -1, search_prepared = FALSE) -EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. +[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey -Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier These annotations are only available if a fragmentation tree is available. +[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey
Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the selected formula result These annotations are only available if a fragmentation tree is available.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. ### Example ```R library(Rsirius) -# EXPERIMENTAL: This endpoint is experimental because it produces return values that are not yet stable. +# [EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to read from. @@ -1631,11 +1975,12 @@ var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (al var_formula_id <- "formula_id_example" # character | identifier of the requested formula result var_inchi_key <- "inchi_key_example" # character | 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation var_spectrum_index <- -1 # integer | index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) (Optional) +var_search_prepared <- FALSE # 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$GetStructureAnnotatedSpectrumExperimental(var_project_id, var_aligned_feature_id, var_formula_id, var_inchi_key, spectrum_index = var_spectrum_indexdata_file = "result.txt") -result <- api_instance$features_api$GetStructureAnnotatedSpectrumExperimental(var_project_id, var_aligned_feature_id, var_formula_id, var_inchi_key, spectrum_index = var_spectrum_index) +# result <- api_instance$GetStructureAnnotatedSpectrumExperimental(var_project_id, var_aligned_feature_id, var_formula_id, var_inchi_key, spectrum_index = var_spectrum_index, search_prepared = var_search_prepareddata_file = "result.txt") +result <- api_instance$features_api$GetStructureAnnotatedSpectrumExperimental(var_project_id, var_aligned_feature_id, var_formula_id, var_inchi_key, spectrum_index = var_spectrum_index, search_prepared = var_search_prepared) dput(result) ``` @@ -1648,6 +1993,7 @@ Name | Type | Description | Notes **formula_id** | **character**| identifier of the requested formula result | **inchi_key** | **character**| 2d InChIKey of the structure candidate to be used to annotate the spectrum annotation | **spectrum_index** | **integer**| index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default) | [optional] [default to -1] + **search_prepared** | **character**| | [optional] [default to FALSE] ### Return type @@ -1668,7 +2014,7 @@ No authorization required | **200** | Fragmentation spectrum annotated with fragments and sub-structures. | - | # **GetStructureCandidates** -> array[StructureCandidateFormula] GetStructureCandidates(project_id, aligned_feature_id, opt_fields = ["none"]) +> array[StructureCandidateFormula] GetStructureCandidates(project_id, aligned_feature_id, opt_fields = [none]) List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. @@ -1698,7 +2044,7 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **character**| project-space to read from. | **aligned_feature_id** | **character**| feature (aligned over runs) the structure candidates belong to. | - **opt_fields** | Enum [none, fingerprint, dbLinks, libraryMatches] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **opt_fields** | Enum [none, fingerprint, dbLinks, libraryMatches, structureSvg] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -1719,7 +2065,7 @@ No authorization required | **200** | StructureCandidate of this feature (aligned over runs) candidate with specified optional fields. | - | # **GetStructureCandidatesByFormula** -> array[StructureCandidateScored] GetStructureCandidatesByFormula(project_id, aligned_feature_id, formula_id, opt_fields = ["none"]) +> array[StructureCandidateScored] GetStructureCandidatesByFormula(project_id, aligned_feature_id, formula_id, opt_fields = [none]) List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. @@ -1751,7 +2097,7 @@ Name | Type | Description | Notes **project_id** | **character**| project-space to read from. | **aligned_feature_id** | **character**| feature (aligned over runs) the formula result belongs to. | **formula_id** | **character**| identifier of the requested formula result | - **opt_fields** | Enum [none, fingerprint, dbLinks, libraryMatches] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **opt_fields** | Enum [none, fingerprint, dbLinks, libraryMatches, structureSvg] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -1772,7 +2118,7 @@ No authorization required | **200** | StructureCandidate of this formula candidate with specified optional fields. | - | # **GetStructureCandidatesByFormulaPaged** -> PagedModelStructureCandidateScored GetStructureCandidatesByFormulaPaged(project_id, aligned_feature_id, formula_id, page = 0, size = 20, sort = var.sort, opt_fields = ["none"]) +> PagedModelStructureCandidateScored GetStructureCandidatesByFormulaPaged(project_id, aligned_feature_id, formula_id, page = 0, size = 20, sort = var.sort, opt_fields = [none]) Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information. @@ -1810,7 +2156,7 @@ Name | Type | Description | Notes **page** | **integer**| Zero-based page index (0..N) | [optional] [default to 0] **size** | **integer**| The size of the page to be returned | [optional] [default to 20] **sort** | list( **character** )| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] - **opt_fields** | Enum [none, fingerprint, dbLinks, libraryMatches] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **opt_fields** | Enum [none, fingerprint, dbLinks, libraryMatches, structureSvg] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -1831,7 +2177,7 @@ No authorization required | **200** | StructureCandidate of this formula candidate with specified optional fields. | - | # **GetStructureCandidatesPaged** -> PagedModelStructureCandidateFormula GetStructureCandidatesPaged(project_id, aligned_feature_id, page = 0, size = 20, sort = var.sort, opt_fields = ["none"]) +> PagedModelStructureCandidateFormula GetStructureCandidatesPaged(project_id, aligned_feature_id, page = 0, size = 20, sort = var.sort, opt_fields = [none]) Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information. @@ -1867,7 +2213,7 @@ Name | Type | Description | Notes **page** | **integer**| Zero-based page index (0..N) | [optional] [default to 0] **size** | **integer**| The size of the page to be returned | [optional] [default to 20] **sort** | list( **character** )| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] - **opt_fields** | Enum [none, fingerprint, dbLinks, libraryMatches] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **opt_fields** | Enum [none, fingerprint, dbLinks, libraryMatches, structureSvg] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -1887,18 +2233,67 @@ No authorization required |-------------|-------------|------------------| | **200** | StructureCandidate of this feature (aligned over runs) candidate with specified optional fields. | - | +# **GetTagsForAlignedFeaturesExperimental** +> array[Tag] GetTagsForAlignedFeaturesExperimental(project_id, object_id) + +[EXPERIMENTAL] Get all tags associated with this Object + +[EXPERIMENTAL] Get all tags associated with this Object + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Get all tags associated with this Object +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to get from. +var_object_id <- "object_id_example" # character | object to get tags for. + +api_instance <- rsirius_api$new() +# to save the result into a file, simply add the optional `data_file` parameter, e.g. +# result <- api_instance$GetTagsForAlignedFeaturesExperimental(var_project_id, var_object_iddata_file = "result.txt") +result <- api_instance$features_api$GetTagsForAlignedFeaturesExperimental(var_project_id, var_object_id) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to get from. | + **object_id** | **character**| object to get tags for. | + +### Return type + +[**array[Tag]**](Tag.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | the tags of the requested object | - | + # **GetTracesExperimental** > TraceSetExperimental GetTracesExperimental(project_id, aligned_feature_id, include_all = FALSE) -EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId) -Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis, but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data. However, this also means that all traces can be directly compared against each other, as they all lie in the same retention time axis. By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set, it also includes samples in which the same trace appears in. +[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId).
Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis, but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data. However, this also means that all traces can be directly compared against each other, as they all lie in the same retention time axis. By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set, it also includes samples in which the same trace appears in.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. ### Example ```R library(Rsirius) -# EXPERIMENTAL: This endpoint is experimental and may be changed (or even removed) without notice until it is declared stable. +# [EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId) # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to read from. @@ -1938,3 +2333,51 @@ No authorization required |-------------|-------------|------------------| | **200** | Traces of the given feature. | - | +# **RemoveTagFromAlignedFeatureExperimental** +> RemoveTagFromAlignedFeatureExperimental(project_id, aligned_feature_id, tag_name) + +[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space + +[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to delete from. +var_aligned_feature_id <- "aligned_feature_id_example" # character | feature (aligned over runs) to delete tag from. +var_tag_name <- "tag_name_example" # character | name of the tag to delete. + +api_instance <- rsirius_api$new() +api_instance$features_api$RemoveTagFromAlignedFeatureExperimental(var_project_id, var_aligned_feature_id, var_tag_name) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to delete from. | + **aligned_feature_id** | **character**| feature (aligned over runs) to delete tag from. | + **tag_name** | **character**| name of the tag to delete. | + +### 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 | +|-------------|-------------|------------------| +| **200** | OK | - | + diff --git a/client-api_r/generated/docs/FoldChange.md b/client-api_r/generated/docs/FoldChange.md new file mode 100644 index 00000000..4711f1d9 --- /dev/null +++ b/client-api_r/generated/docs/FoldChange.md @@ -0,0 +1,15 @@ +# Rsirius::FoldChange + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**leftGroup** | **character** | | [optional] +**rightGroup** | **character** | | [optional] +**aggregation** | **character** | | [optional] [Enum: [AVG, MIN, MAX]] +**quantification** | **character** | | [optional] [Enum: [APEX_INTENSITY, AREA_UNDER_CURVE]] +**quantType** | **character** | | [Enum: [FEATURES, COMPOUNDS]] +**objectId** | **character** | | +**foldChange** | **numeric** | | + + diff --git a/client-api_r/generated/docs/FormulaCandidate.md b/client-api_r/generated/docs/FormulaCandidate.md index 144b0bc5..becd8d59 100644 --- a/client-api_r/generated/docs/FormulaCandidate.md +++ b/client-api_r/generated/docs/FormulaCandidate.md @@ -18,12 +18,12 @@ Name | Type | Description | Notes **numOfExplainablePeaks** | **integer** | | [optional] **totalExplainedIntensity** | **numeric** | | [optional] **medianMassDeviation** | [**Deviation**](Deviation.md) | | [optional] -**fragmentationTree** | [**FragmentationTree**](FragmentationTree.md) | | [optional] -**annotatedSpectrum** | [**AnnotatedSpectrum**](AnnotatedSpectrum.md) | | [optional] -**isotopePatternAnnotation** | [**IsotopePatternAnnotation**](IsotopePatternAnnotation.md) | | [optional] -**lipidAnnotation** | [**LipidAnnotation**](LipidAnnotation.md) | | [optional] +**fragmentationTree** | [**FragmentationTree**](FragmentationTree.md) | The fragmentation tree that belongs to this molecular formula candidate (produces the treeScore). | [optional] +**annotatedSpectrum** | [**AnnotatedSpectrum**](AnnotatedSpectrum.md) | Fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses | [optional] +**isotopePatternAnnotation** | [**IsotopePatternAnnotation**](IsotopePatternAnnotation.md) | The measured and simulated isotope pattern that have been compared against each other to produce the isotopeScore. | [optional] +**lipidAnnotation** | [**LipidAnnotation**](LipidAnnotation.md) | ElGordo lipid annotation of this candidate. NULL if annotation was not requested. lipidAnnotation.lipidSpecies == NULL if candidate has not been classified as a lipid | [optional] **predictedFingerprint** | **array[numeric]** | Probabilistic molecular fingerprint predicted by CSI:FingerID | [optional] -**compoundClasses** | [**CompoundClasses**](CompoundClasses.md) | | [optional] -**canopusPrediction** | [**CanopusPrediction**](CanopusPrediction.md) | | [optional] +**compoundClasses** | [**CompoundClasses**](CompoundClasses.md) | Most likely compound classes for different levels of each ontology for this FormulaCandidate (predictedFingerprint) | [optional] +**canopusPrediction** | [**CanopusPrediction**](CanopusPrediction.md) | All classes predicted by canopus for this FormulaCandidate (predictedFingerprint) | [optional] diff --git a/client-api_r/generated/docs/GuiApi.md b/client-api_r/generated/docs/GuiApi.md deleted file mode 100644 index 7b2e5bc7..00000000 --- a/client-api_r/generated/docs/GuiApi.md +++ /dev/null @@ -1,146 +0,0 @@ -# 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/Job.md b/client-api_r/generated/docs/Job.md index bbd830d4..5adaf6ca 100644 --- a/client-api_r/generated/docs/Job.md +++ b/client-api_r/generated/docs/Job.md @@ -7,7 +7,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **id** | **character** | Unique identifier to access the job via the API | [optional] **command** | **character** | Command string of the executed Task | [optional] -**progress** | [**JobProgress**](JobProgress.md) | | [optional] +**progress** | [**JobProgress**](JobProgress.md) | Optional progress information of this job | [optional] **affectedCompoundIds** | **array[character]** | List of compoundIds that are affected by this job. This lis will also contain compoundIds where not all features of the compound are affected by the job. If this job is creating compounds (e.g. data import jobs) this value will be NULL until the jobs has finished | [optional] **affectedAlignedFeatureIds** | **array[character]** | List of alignedFeatureIds that are affected by this job. If this job is creating features (e.g. data import jobs) this value will be NULL until the jobs has finished | [optional] **jobEffect** | **character** | Effect this job has. The affected ids are added, removed or modified. Null if job does not affect features/compounds Not available/null if affected Ids are not requested | [optional] [Enum: [IMPORT, COMPUTATION, DELETION]] diff --git a/client-api_r/generated/docs/JobSubmission.md b/client-api_r/generated/docs/JobSubmission.md index 08c0a027..a2b02317 100644 --- a/client-api_r/generated/docs/JobSubmission.md +++ b/client-api_r/generated/docs/JobSubmission.md @@ -11,13 +11,13 @@ Name | Type | Description | Notes **enforcedAdducts** | **array[character]** | Describes how to deal with Adducts: Enforced adducts that are always considered. 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]+ 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]- | [optional] **detectableAdducts** | **array[character]** | 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). 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]+ 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]- | [optional] **recompute** | **character** | Indicate if already existing result for a tool to be executed should be overwritten or not. | [optional] -**spectraSearchParams** | [**SpectralLibrarySearch**](SpectralLibrarySearch.md) | | [optional] -**formulaIdParams** | [**Sirius**](Sirius.md) | | [optional] -**zodiacParams** | [**Zodiac**](Zodiac.md) | | [optional] -**fingerprintPredictionParams** | [**FingerprintPrediction**](FingerprintPrediction.md) | | [optional] -**canopusParams** | [**Canopus**](Canopus.md) | | [optional] -**structureDbSearchParams** | [**StructureDbSearch**](StructureDbSearch.md) | | [optional] -**msNovelistParams** | [**MsNovelist**](MsNovelist.md) | | [optional] +**spectraSearchParams** | [**SpectralLibrarySearch**](SpectralLibrarySearch.md) | Parameter Object for spectral library search tool (CLI-Tool: spectra-search). Library search results can be used to enhance formula search results If NULL the tool will not be executed. | [optional] +**formulaIdParams** | [**Sirius**](Sirius.md) | Parameter Object for molecular formula identification tool (CLI-Tool: formula, sirius). If NULL the tool will not be executed. | [optional] +**zodiacParams** | [**Zodiac**](Zodiac.md) | Parameter Object for network based molecular formula re-ranking (CLI-Tool: zodiac). If NULL the tool will not be executed. | [optional] +**fingerprintPredictionParams** | [**FingerprintPrediction**](FingerprintPrediction.md) | Parameter Object for Fingerprint prediction with CSI:FingerID (CLI-Tool: fingerint). If NULL the tool will not be executed. | [optional] +**canopusParams** | [**Canopus**](Canopus.md) | Parameter Object for CANOPUS compound class prediction tool (CLI-Tool: canopus). If NULL the tool will not be executed. | [optional] +**structureDbSearchParams** | [**StructureDbSearch**](StructureDbSearch.md) | Parameter Object for structure database search with CSI:FingerID (CLI-Tool: structure). If NULL the tool will not be executed. | [optional] +**msNovelistParams** | [**MsNovelist**](MsNovelist.md) | Parameter Object for MsNovelist DeNovo structure generation (CLI-Tool: msnovelist) If NULL the tool will not be executed. | [optional] **configMap** | **map(character)** | As an alternative to the object based parameters, this map allows to store key value pairs of ALL SIRIUS parameters. All possible parameters can be retrieved from SIRIUS via the respective endpoint. | [optional] diff --git a/client-api_r/generated/docs/JobsApi.md b/client-api_r/generated/docs/JobsApi.md index fa45bf3b..f3693842 100644 --- a/client-api_r/generated/docs/JobsApi.md +++ b/client-api_r/generated/docs/JobsApi.md @@ -7,10 +7,11 @@ Method | HTTP request | Description [**DeleteJob**](JobsApi.md#DeleteJob) | **DELETE** /api/projects/{projectId}/jobs/{jobId} | Delete job. [**DeleteJobConfig**](JobsApi.md#DeleteJobConfig) | **DELETE** /api/job-configs/{name} | Delete job configuration with given name. [**DeleteJobs**](JobsApi.md#DeleteJobs) | **DELETE** /api/projects/{projectId}/jobs | * Delete ALL jobs. +[**GetCommand**](JobsApi.md#GetCommand) | **POST** /api/job-configs/get-command | Get a CLI command for the given job configuration. [**GetDefaultJobConfig**](JobsApi.md#GetDefaultJobConfig) | **GET** /api/default-job-config | Request default job configuration [**GetJob**](JobsApi.md#GetJob) | **GET** /api/projects/{projectId}/jobs/{jobId} | Get job information and its current state and progress (if available). [**GetJobConfig**](JobsApi.md#GetJobConfig) | **GET** /api/job-configs/{name} | Request job configuration with given name. -[**GetJobConfigNames**](JobsApi.md#GetJobConfigNames) | **GET** /api/job-config-names | DEPRECATED: use /job-configs to get all configs with names. +[**GetJobConfigNames**](JobsApi.md#GetJobConfigNames) | **GET** /api/job-config-names | [DEPRECATED] Get all (non-default) job configuration names [**GetJobConfigs**](JobsApi.md#GetJobConfigs) | **GET** /api/job-configs | Request all available job configurations [**GetJobs**](JobsApi.md#GetJobs) | **GET** /api/projects/{projectId}/jobs | Get List of all available jobs with information such as current state and progress (if available). [**GetJobsPaged**](JobsApi.md#GetJobsPaged) | **GET** /api/projects/{projectId}/jobs/page | Get Page of jobs with information such as current state and progress (if available). @@ -162,6 +163,53 @@ No authorization required |-------------|-------------|------------------| | **202** | Accepted | - | +# **GetCommand** +> array[character] GetCommand(job_submission) + +Get a CLI command for the given job configuration. + +Get a CLI command for the given job configuration. + +### Example +```R +library(Rsirius) + +# Get a CLI command for the given job configuration. +# +# prepare function argument(s) +var_job_submission <- JobSubmission$new(c("compoundIds_example"), c("alignedFeatureIds_example"), c("fallbackAdducts_example"), c("enforcedAdducts_example"), c("detectableAdducts_example"), "recompute_example", SpectralLibrarySearch$new("enabled_example", c("spectraSearchDBs_example"), 123, 123, 123, "enableAnalogueSearch_example", 123, 123, "INTENSITY", 123), Sirius$new("enabled_example", "QTOF", 123, 123, 123, "IGNORE", "filterByIsotopePattern_example", "enforceElGordoFormula_example", "performBottomUpSearch_example", 123, c("formulaSearchDBs_example"), "applyFormulaConstraintsToDBAndBottomUpSearch_example", "enforcedFormulaConstraints_example", "fallbackFormulaConstraints_example", c("detectableElements_example"), Timeout$new(123, 123), UseHeuristic$new(123, 123), "injectSpecLibMatchFormulas_example", 123, 123), Zodiac$new("enabled_example", 123, 123, "runInTwoSteps_example", ZodiacEdgeFilterThresholds$new(123, 123, 123), ZodiacEpochs$new(123, 123, 123), ZodiacLibraryScoring$new("enabled_example", 123), ZodiacAnalogueNodes$new("enabled_example", 123, 123)), FingerprintPrediction$new("enabled_example", "useScoreThreshold_example", "alwaysPredictHighRefMatches_example"), Canopus$new("enabled_example"), StructureDbSearch$new("enabled_example", c("structureSearchDBs_example"), "tagStructuresWithLipidClass_example", "OFF"), MsNovelist$new("enabled_example", 123), c(key = "inner_example")) # JobSubmission | + +api_instance <- rsirius_api$new() +# to save the result into a file, simply add the optional `data_file` parameter, e.g. +# result <- api_instance$GetCommand(var_job_submissiondata_file = "result.txt") +result <- api_instance$jobs_api$GetCommand(var_job_submission) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **job_submission** | [**JobSubmission**](JobSubmission.md)| | + +### Return type + +**array[character]** + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + # **GetDefaultJobConfig** > JobSubmission GetDefaultJobConfig(include_config_map = FALSE, move_parameters_to_config_map = FALSE, include_custom_dbs_for_structure_search = FALSE) @@ -178,7 +226,7 @@ library(Rsirius) # prepare function argument(s) var_include_config_map <- FALSE # character | if true, generic configmap with-defaults will be included (Optional) var_move_parameters_to_config_map <- FALSE # character | if true, object-based parameters will be converted to and added to the generic configMap parameters (Optional) -var_include_custom_dbs_for_structure_search <- FALSE # character | if true, default database selection of structure db search contains also all available custom DB. (Optional) +var_include_custom_dbs_for_structure_search <- FALSE # character | if true, default database selection of structure db search spectral library search contains also all available custom DB. If No custom dbs are selected, spectral library search is disabled by default. (Optional) api_instance <- rsirius_api$new() # to save the result into a file, simply add the optional `data_file` parameter, e.g. @@ -193,7 +241,7 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **include_config_map** | **character**| if true, generic configmap with-defaults will be included | [optional] [default to FALSE] **move_parameters_to_config_map** | **character**| if true, object-based parameters will be converted to and added to the generic configMap parameters | [optional] [default to FALSE] - **include_custom_dbs_for_structure_search** | **character**| if true, default database selection of structure db search contains also all available custom DB. | [optional] [default to FALSE] + **include_custom_dbs_for_structure_search** | **character**| if true, default database selection of structure db search spectral library search contains also all available custom DB. If No custom dbs are selected, spectral library search is disabled by default. | [optional] [default to FALSE] ### Return type @@ -214,7 +262,7 @@ No authorization required | **200** | {@link JobSubmission JobSubmission} with all parameters set to default values. | - | # **GetJob** -> Job GetJob(project_id, job_id, opt_fields = ["progress"]) +> Job GetJob(project_id, job_id, opt_fields = [progress]) Get job information and its current state and progress (if available). @@ -244,7 +292,7 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **character**| project-space to run jobs on | **job_id** | **character**| of the job to be returned | - **opt_fields** | Enum [none, command, progress, affectedIds] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["progress"]] + **opt_fields** | Enum [none, command, progress, affectedIds] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [progress]] ### Return type @@ -316,15 +364,15 @@ No authorization required # **GetJobConfigNames** > array[character] GetJobConfigNames() -DEPRECATED: use /job-configs to get all configs with names. +[DEPRECATED] Get all (non-default) job configuration names -Get all (non-default) job configuration names +[DEPRECATED] Get all (non-default) job configuration names
[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. ### Example ```R library(Rsirius) -# DEPRECATED: use /job-configs to get all configs with names. +# [DEPRECATED] Get all (non-default) job configuration names # api_instance <- rsirius_api$new() @@ -447,7 +495,7 @@ No authorization required | **200** | OK | - | # **GetJobsPaged** -> PagedModelJob GetJobsPaged(project_id, page = 0, size = 20, sort = var.sort, opt_fields = ["none"]) +> PagedModelJob GetJobsPaged(project_id, page = 0, size = 20, sort = var.sort, opt_fields = [none]) Get Page of jobs with information such as current state and progress (if available). @@ -481,7 +529,7 @@ Name | Type | Description | Notes **page** | **integer**| Zero-based page index (0..N) | [optional] [default to 0] **size** | **integer**| The size of the page to be returned | [optional] [default to 20] **sort** | list( **character** )| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] - **opt_fields** | Enum [none, command, progress, affectedIds] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + **opt_fields** | Enum [none, command, progress, affectedIds] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [none]] ### Return type @@ -561,7 +609,7 @@ library(Rsirius) # # prepare function argument(s) var_name <- "name_example" # character | name of the job-config to add -var_job_submission <- JobSubmission$new(c("compoundIds_example"), c("alignedFeatureIds_example"), c("fallbackAdducts_example"), c("enforcedAdducts_example"), c("detectableAdducts_example"), "recompute_example", SpectralLibrarySearch$new("enabled_example", c("spectraSearchDBs_example"), 123, 123, "INTENSITY"), Sirius$new("enabled_example", "QTOF", 123, 123, 123, "IGNORE", "filterByIsotopePattern_example", "enforceElGordoFormula_example", "performBottomUpSearch_example", 123, c("formulaSearchDBs_example"), "applyFormulaConstraintsToDBAndBottomUpSearch_example", "enforcedFormulaConstraints_example", "fallbackFormulaConstraints_example", c("detectableElements_example"), Timeout$new(123, 123), UseHeuristic$new(123, 123), "injectSpecLibMatchFormulas_example", 123, 123), Zodiac$new("enabled_example", 123, 123, "runInTwoSteps_example", ZodiacEdgeFilterThresholds$new(123, 123, 123), ZodiacEpochs$new(123, 123, 123)), FingerprintPrediction$new("enabled_example", "useScoreThreshold_example", "alwaysPredictHighRefMatches_example"), Canopus$new("enabled_example"), StructureDbSearch$new("enabled_example", c("structureSearchDBs_example"), "tagStructuresWithLipidClass_example", "OFF"), MsNovelist$new("enabled_example", 123), c(key = "inner_example")) # JobSubmission | to add +var_job_submission <- JobSubmission$new(c("compoundIds_example"), c("alignedFeatureIds_example"), c("fallbackAdducts_example"), c("enforcedAdducts_example"), c("detectableAdducts_example"), "recompute_example", SpectralLibrarySearch$new("enabled_example", c("spectraSearchDBs_example"), 123, 123, 123, "enableAnalogueSearch_example", 123, 123, "INTENSITY", 123), Sirius$new("enabled_example", "QTOF", 123, 123, 123, "IGNORE", "filterByIsotopePattern_example", "enforceElGordoFormula_example", "performBottomUpSearch_example", 123, c("formulaSearchDBs_example"), "applyFormulaConstraintsToDBAndBottomUpSearch_example", "enforcedFormulaConstraints_example", "fallbackFormulaConstraints_example", c("detectableElements_example"), Timeout$new(123, 123), UseHeuristic$new(123, 123), "injectSpecLibMatchFormulas_example", 123, 123), Zodiac$new("enabled_example", 123, 123, "runInTwoSteps_example", ZodiacEdgeFilterThresholds$new(123, 123, 123), ZodiacEpochs$new(123, 123, 123), ZodiacLibraryScoring$new("enabled_example", 123), ZodiacAnalogueNodes$new("enabled_example", 123, 123)), FingerprintPrediction$new("enabled_example", "useScoreThreshold_example", "alwaysPredictHighRefMatches_example"), Canopus$new("enabled_example"), StructureDbSearch$new("enabled_example", c("structureSearchDBs_example"), "tagStructuresWithLipidClass_example", "OFF"), MsNovelist$new("enabled_example", 123), c(key = "inner_example")) # JobSubmission | to add var_override_existing <- FALSE # character | (Optional) var_move_parameters_to_config_map <- FALSE # character | if true, object-based parameters will be converted to and added to the generic configMap parameters in the return object (Optional) @@ -614,7 +662,7 @@ library(Rsirius) # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to run jobs on -var_job_submission <- JobSubmission$new(c("compoundIds_example"), c("alignedFeatureIds_example"), c("fallbackAdducts_example"), c("enforcedAdducts_example"), c("detectableAdducts_example"), "recompute_example", SpectralLibrarySearch$new("enabled_example", c("spectraSearchDBs_example"), 123, 123, "INTENSITY"), Sirius$new("enabled_example", "QTOF", 123, 123, 123, "IGNORE", "filterByIsotopePattern_example", "enforceElGordoFormula_example", "performBottomUpSearch_example", 123, c("formulaSearchDBs_example"), "applyFormulaConstraintsToDBAndBottomUpSearch_example", "enforcedFormulaConstraints_example", "fallbackFormulaConstraints_example", c("detectableElements_example"), Timeout$new(123, 123), UseHeuristic$new(123, 123), "injectSpecLibMatchFormulas_example", 123, 123), Zodiac$new("enabled_example", 123, 123, "runInTwoSteps_example", ZodiacEdgeFilterThresholds$new(123, 123, 123), ZodiacEpochs$new(123, 123, 123)), FingerprintPrediction$new("enabled_example", "useScoreThreshold_example", "alwaysPredictHighRefMatches_example"), Canopus$new("enabled_example"), StructureDbSearch$new("enabled_example", c("structureSearchDBs_example"), "tagStructuresWithLipidClass_example", "OFF"), MsNovelist$new("enabled_example", 123), c(key = "inner_example")) # JobSubmission | configuration of the job that will be submitted of the job to be returned +var_job_submission <- JobSubmission$new(c("compoundIds_example"), c("alignedFeatureIds_example"), c("fallbackAdducts_example"), c("enforcedAdducts_example"), c("detectableAdducts_example"), "recompute_example", SpectralLibrarySearch$new("enabled_example", c("spectraSearchDBs_example"), 123, 123, 123, "enableAnalogueSearch_example", 123, 123, "INTENSITY", 123), Sirius$new("enabled_example", "QTOF", 123, 123, 123, "IGNORE", "filterByIsotopePattern_example", "enforceElGordoFormula_example", "performBottomUpSearch_example", 123, c("formulaSearchDBs_example"), "applyFormulaConstraintsToDBAndBottomUpSearch_example", "enforcedFormulaConstraints_example", "fallbackFormulaConstraints_example", c("detectableElements_example"), Timeout$new(123, 123), UseHeuristic$new(123, 123), "injectSpecLibMatchFormulas_example", 123, 123), Zodiac$new("enabled_example", 123, 123, "runInTwoSteps_example", ZodiacEdgeFilterThresholds$new(123, 123, 123), ZodiacEpochs$new(123, 123, 123), ZodiacLibraryScoring$new("enabled_example", 123), ZodiacAnalogueNodes$new("enabled_example", 123, 123)), FingerprintPrediction$new("enabled_example", "useScoreThreshold_example", "alwaysPredictHighRefMatches_example"), Canopus$new("enabled_example"), StructureDbSearch$new("enabled_example", c("structureSearchDBs_example"), "tagStructuresWithLipidClass_example", "OFF"), MsNovelist$new("enabled_example", 123), c(key = "inner_example")) # JobSubmission | configuration of the job that will be submitted of the job to be returned var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) api_instance <- rsirius_api$new() @@ -651,7 +699,7 @@ No authorization required | **202** | Accepted | - | # **StartJobFromConfig** -> Job StartJobFromConfig(project_id, job_config_name, request_body, recompute = var.recompute, opt_fields = ["command","progress"]) +> Job StartJobFromConfig(project_id, job_config_name, request_body, recompute = var.recompute, opt_fields = [command, progress]) Start computation for given compounds and with parameters from a stored job-config. @@ -685,7 +733,7 @@ Name | Type | Description | Notes **job_config_name** | **character**| name if the config to be used | **request_body** | list( **character** )| List of alignedFeatureIds to be computed | **recompute** | **character**| enable or disable recompute. If null the stored value will be used. | [optional] - **opt_fields** | Enum [none, command, progress, affectedIds] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["command","progress"]] + **opt_fields** | Enum [none, command, progress, affectedIds] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [command, progress]] ### Return type diff --git a/client-api_r/generated/docs/LcmsSubmissionParameters.md b/client-api_r/generated/docs/LcmsSubmissionParameters.md index f7cfcb19..6e3424a5 100644 --- a/client-api_r/generated/docs/LcmsSubmissionParameters.md +++ b/client-api_r/generated/docs/LcmsSubmissionParameters.md @@ -5,5 +5,10 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **alignLCMSRuns** | **character** | Specifies whether LC/MS runs should be aligned | [optional] [default to TRUE] +**noiseIntensity** | **numeric** | Noise level under which all peaks are considered to be likely noise. A peak has to be at least 3x noise level to be picked as feature. Peaks with MS/MS are still picked even though they might be below noise level. If not specified, the noise intensity is detected automatically from data. We recommend to NOT specify this parameter, as the automated detection is usually sufficient. | [optional] [default to -1] +**traceMaxMassDeviation** | [**Deviation**](Deviation.md) | Maximal allowed mass deviation for peaks in ms1 to be considered as belonging to the same trace. | [optional] +**alignMaxMassDeviation** | [**Deviation**](Deviation.md) | Maximal allowed mass deviation for aligning features. If not specified, this parameter is estimated from data. | [optional] +**alignMaxRetentionTimeDeviation** | **numeric** | Maximal allowed retention time error in seconds for aligning features. If not specified, this parameter is estimated from data. | [optional] [default to -1] +**minSNR** | **numeric** | 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 | [optional] [default to 3] diff --git a/client-api_r/generated/docs/LicenseInfo.md b/client-api_r/generated/docs/LicenseInfo.md index d77dfb4f..1696ec21 100644 --- a/client-api_r/generated/docs/LicenseInfo.md +++ b/client-api_r/generated/docs/LicenseInfo.md @@ -6,8 +6,8 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **userEmail** | **character** | Email address of the user account this license information belongs to. | [optional] **userId** | **character** | User ID (uid) of the user account this license information belongs to. | [optional] -**subscription** | [**Subscription**](Subscription.md) | | [optional] -**consumables** | [**SubscriptionConsumables**](SubscriptionConsumables.md) | | [optional] +**subscription** | [**Subscription**](Subscription.md) | The active subscription that was used the requested the information | [optional] +**consumables** | [**SubscriptionConsumables**](SubscriptionConsumables.md) | Status of the consumable resources of the {@link Subscription Subscription}. | [optional] **terms** | [**array[Term]**](Term.md) | | [optional] diff --git a/client-api_r/generated/docs/MsData.md b/client-api_r/generated/docs/MsData.md index a125cbe7..545ca3fe 100644 --- a/client-api_r/generated/docs/MsData.md +++ b/client-api_r/generated/docs/MsData.md @@ -1,10 +1,11 @@ # Rsirius::MsData -The MsData wraps all spectral input data belonging to a (aligned) feature. All spectra fields are optional. However, at least one Spectrum field needs to be set to create a valid MsData Object. The different types of spectra fields can be extended to adapt to other MassSpec measurement techniques not covered yet.
Each Feature can have: - One merged MS/MS spectrum (optional) - One merged MS spectrum (optional) - many MS/MS spectra (optional) - many MS spectra (optional)
Each non-merged spectrum has an index which can be used to access the spectrum.
In the future we might add some additional information like chromatographic peak or something similar +The MsData wraps all spectral input data belonging to a (aligned) feature. All spectra fields are optional. However, at least one Spectrum field needs to be set to create a valid MsData Object. The different types of spectra fields can be extended to adapt to other MassSpec measurement techniques not covered yet.
Each Feature can have: - One extracted isotope pattern (optional) - One merged MS/MS spectrum (optional) - One merged MS spectrum (optional) - many MS/MS spectra (optional) - many MS spectra (optional)
Each non-merged spectrum has an index which can be used to access the spectrum.
In the future we might add some additional information like chromatographic peak or something similar ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- +**isotopePattern** | [**BasicSpectrum**](BasicSpectrum.md) | | [optional] **mergedMs1** | [**BasicSpectrum**](BasicSpectrum.md) | | [optional] **mergedMs2** | [**BasicSpectrum**](BasicSpectrum.md) | | [optional] **ms1Spectra** | [**array[BasicSpectrum]**](BasicSpectrum.md) | | [optional] diff --git a/client-api_r/generated/docs/PagedModelRun.md b/client-api_r/generated/docs/PagedModelRun.md new file mode 100644 index 00000000..3b9b8a09 --- /dev/null +++ b/client-api_r/generated/docs/PagedModelRun.md @@ -0,0 +1,10 @@ +# Rsirius::PagedModelRun + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**content** | [**array[Run]**](Run.md) | | [optional] +**page** | [**PageMetadata**](PageMetadata.md) | | [optional] + + diff --git a/client-api_r/generated/docs/PeakAnnotation.md b/client-api_r/generated/docs/PeakAnnotation.md index d9fff0b6..397838d0 100644 --- a/client-api_r/generated/docs/PeakAnnotation.md +++ b/client-api_r/generated/docs/PeakAnnotation.md @@ -12,7 +12,7 @@ Name | Type | Description | Notes **massDeviationPpm** | **numeric** | Relative mass deviation of the exact mass to the measured peak mass in ppm | [optional] **recalibratedMassDeviationMz** | **numeric** | Absolute mass deviation of the exact mass to the recalibrated peak mass in mDa | [optional] **recalibratedMassDeviationPpm** | **numeric** | Relative mass deviation of the exact mass to the recalibrated peak mass in ppm | [optional] -**parentPeak** | [**ParentPeak**](ParentPeak.md) | | [optional] +**parentPeak** | [**ParentPeak**](ParentPeak.md) | Link to the parent peak connected via the neutral loss from the fragmentation tree. | [optional] **substructureAtoms** | **array[integer]** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Array/List of indices of the atoms of the structure candidate that are part of this fragments substructure (highlighted atoms) | [optional] **substructureBonds** | **array[integer]** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Array/List of indices of the bonds of the structure candidate that are part of this fragments substructure (highlighted bonds) Null if substructure annotation not available or not requested. | [optional] **substructureBondsCut** | **array[integer]** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Array/List of indices of the bonds of the structure candidate that need to be cut to produce this fragments substructure (highlighted cutted bonds). Null if substructure annotation not available or not requested. | [optional] diff --git a/client-api_r/generated/docs/GuiInfo.md b/client-api_r/generated/docs/PeakPair.md similarity index 51% rename from client-api_r/generated/docs/GuiInfo.md rename to client-api_r/generated/docs/PeakPair.md index 60f38bc5..d3d6a5ce 100644 --- a/client-api_r/generated/docs/GuiInfo.md +++ b/client-api_r/generated/docs/PeakPair.md @@ -1,9 +1,10 @@ -# Rsirius::GuiInfo +# Rsirius::PeakPair ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**projectId** | **character** | The project this instance is running on | [optional] +**queryPeak** | **integer** | | +**referencePeak** | **integer** | | diff --git a/client-api_r/generated/docs/ProjectInfo.md b/client-api_r/generated/docs/ProjectInfo.md index d213c182..b2c0a208 100644 --- a/client-api_r/generated/docs/ProjectInfo.md +++ b/client-api_r/generated/docs/ProjectInfo.md @@ -7,7 +7,7 @@ Name | Type | Description | Notes **projectId** | **character** | a user selected unique name of the project for easy access. | [optional] **location** | **character** | storage location of the project. | [optional] **description** | **character** | Description of this project. | [optional] -**type** | **character** | Type of this project. NULL if project type has not yet been specified by importing data. | [optional] [Enum: [DIRECT_IMPORT, PEAKLISTS, ALIGNED_RUNS, UNALIGNED_RUNS]] +**type** | **character** | Type of this project. NULL if project type has not yet been specified by importing data. | [optional] [Enum: [UNIMPORTED, DIRECT_IMPORT, PEAKLISTS, ALIGNED_RUNS, UNALIGNED_RUNS]] **compatible** | **character** | Indicates whether computed results (e.g. fingerprints, compounds classes) are compatible with the backend. If true project is up-to-date and there are no restrictions regarding usage. If false project is incompatible and therefore \"read only\" until the incompatible results have been removed. See updateProject endpoint for further information If NULL the information has not been requested. | [optional] **numOfFeatures** | **integer** | Number of features (aligned over runs) in this project. If NULL, information has not been requested (See OptField 'sizeInformation'). | [optional] **numOfCompounds** | **integer** | 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. | [optional] diff --git a/client-api_r/generated/docs/ProjectsApi.md b/client-api_r/generated/docs/ProjectsApi.md index 4f8aab4a..629cda5d 100644 --- a/client-api_r/generated/docs/ProjectsApi.md +++ b/client-api_r/generated/docs/ProjectsApi.md @@ -4,7 +4,7 @@ All URIs are relative to *http://localhost:8080* Method | HTTP request | Description ------------- | ------------- | ------------- -[**CloseProject**](ProjectsApi.md#CloseProject) | **DELETE** /api/projects/{projectId} | Close project-space and remove it from application +[**CloseProject**](ProjectsApi.md#CloseProject) | **DELETE** /api/projects/{projectId} | Close project-space and remove it from the application [**CreateProject**](ProjectsApi.md#CreateProject) | **POST** /api/projects/{projectId} | Create and open a new project-space at given location and make it accessible via the given projectId. [**GetCanopusClassyFireData**](ProjectsApi.md#GetCanopusClassyFireData) | **GET** /api/projects/{projectId}/cf-data | Get CANOPUS prediction vector definition for ClassyFire classes [**GetCanopusNpcData**](ProjectsApi.md#GetCanopusNpcData) | **GET** /api/projects/{projectId}/npc-data | Get CANOPUS prediction vector definition for NPC classes @@ -19,23 +19,24 @@ Method | HTTP request | Description # **CloseProject** -> CloseProject(project_id) +> CloseProject(project_id, compact = FALSE) -Close project-space and remove it from application +Close project-space and remove it from the application -Close project-space and remove it from application. Project will NOT be deleted from disk.
ATTENTION: This will cancel and remove all jobs running on this Project before closing it. If there are many jobs, this might take some time. +Close project-space and remove it from the application. The Project will NOT be deleted from disk.
ATTENTION: This will cancel and remove all jobs running on this Project before closing it. If there are many jobs, this might take some time. ### Example ```R library(Rsirius) -# Close project-space and remove it from application +# Close project-space and remove it from the application # # prepare function argument(s) var_project_id <- "project_id_example" # character | unique name/identifier of the project-space to be closed. +var_compact <- FALSE # character | if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version. (Optional) api_instance <- rsirius_api$new() -api_instance$projects_api$CloseProject(var_project_id) +api_instance$projects_api$CloseProject(var_project_id, compact = var_compact) ``` ### Parameters @@ -43,6 +44,7 @@ api_instance$projects_api$CloseProject(var_project_id) Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **character**| unique name/identifier of the project-space to be closed. | + **compact** | **character**| if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version. | [optional] [default to FALSE] ### Return type @@ -63,7 +65,7 @@ No authorization required | **200** | OK | - | # **CreateProject** -> ProjectInfo CreateProject(project_id, path_to_project = var.path_to_project, opt_fields = ["none"]) +> ProjectInfo CreateProject(project_id, path_to_project = var.path_to_project, opt_fields = [none]) Create and open a new project-space at given location and make it accessible via the given projectId. @@ -93,7 +95,7 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **character**| unique name/identifier that shall be used to access the newly created project-space. Must consist only of [a-zA-Z0-9_-]. | **path_to_project** | **character**| 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. | [optional] - **opt_fields** | Enum [none, compatibilityInfo, sizeInformation] | | [optional] [default to ["none"]] + **opt_fields** | Enum [none, compatibilityInfo, sizeInformation] | | [optional] [default to [none]] ### Return type @@ -346,7 +348,7 @@ No authorization required | **200** | OK | - | # **ImportMsRunData** -> ImportResult ImportMsRunData(project_id, input_files = var.input_files, parameters = var.parameters) +> ImportResult ImportMsRunData(project_id, input_files, parameters) Import and Align full MS-Runs from various formats into the specified project Possible formats (mzML, mzXML) @@ -360,13 +362,13 @@ library(Rsirius) # # prepare function argument(s) var_project_id <- "project_id_example" # character | Project-space to import into. -var_input_files <- c(123) # array[data.frame] | (Optional) -var_parameters <- LcmsSubmissionParameters$new("alignLCMSRuns_example") # LcmsSubmissionParameters | (Optional) +var_input_files <- c(123) # array[data.frame] | Files to import into project. +var_parameters <- LcmsSubmissionParameters$new("alignLCMSRuns_example", 123, Deviation$new(123, 123), Deviation$new(123, 123), 123, 123) # LcmsSubmissionParameters | Parameters for feature alignment and feature finding. api_instance <- rsirius_api$new() # to save the result into a file, simply add the optional `data_file` parameter, e.g. -# result <- api_instance$ImportMsRunData(var_project_id, input_files = var_input_files, parameters = var_parametersdata_file = "result.txt") -result <- api_instance$projects_api$ImportMsRunData(var_project_id, input_files = var_input_files, parameters = var_parameters) +# result <- api_instance$ImportMsRunData(var_project_id, var_input_files, var_parametersdata_file = "result.txt") +result <- api_instance$projects_api$ImportMsRunData(var_project_id, var_input_files, var_parameters) dput(result) ``` @@ -375,8 +377,8 @@ dput(result) Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **character**| Project-space to import into. | - **input_files** | list( **data.frame** )| | [optional] - **parameters** | [**LcmsSubmissionParameters**](LcmsSubmissionParameters.md)| | [optional] + **input_files** | list( **data.frame** )| Files to import into project. | + **parameters** | [**LcmsSubmissionParameters**](LcmsSubmissionParameters.md)| Parameters for feature alignment and feature finding. | ### Return type @@ -397,7 +399,7 @@ No authorization required | **200** | OK | - | # **ImportMsRunDataAsJob** -> Job ImportMsRunDataAsJob(project_id, opt_fields = ["progress"], input_files = var.input_files, parameters = var.parameters) +> Job ImportMsRunDataAsJob(project_id, input_files, parameters, opt_fields = [progress]) Import and Align full MS-Runs from various formats into the specified project as background job. @@ -411,14 +413,14 @@ library(Rsirius) # # prepare function argument(s) var_project_id <- "project_id_example" # character | Project-space to import into. +var_input_files <- c(123) # array[data.frame] | Files to import into project. +var_parameters <- LcmsSubmissionParameters$new("alignLCMSRuns_example", 123, Deviation$new(123, 123), Deviation$new(123, 123), 123, 123) # LcmsSubmissionParameters | Parameters for feature alignment and feature finding. var_opt_fields <- c("none") # array[character] | Set of optional fields to be included. Use 'none' only to override defaults. (Optional) -var_input_files <- c(123) # array[data.frame] | (Optional) -var_parameters <- LcmsSubmissionParameters$new("alignLCMSRuns_example") # LcmsSubmissionParameters | (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$ImportMsRunDataAsJob(var_project_id, opt_fields = var_opt_fields, input_files = var_input_files, parameters = var_parametersdata_file = "result.txt") -result <- api_instance$projects_api$ImportMsRunDataAsJob(var_project_id, opt_fields = var_opt_fields, input_files = var_input_files, parameters = var_parameters) +# result <- api_instance$ImportMsRunDataAsJob(var_project_id, var_input_files, var_parameters, opt_fields = var_opt_fieldsdata_file = "result.txt") +result <- api_instance$projects_api$ImportMsRunDataAsJob(var_project_id, var_input_files, var_parameters, opt_fields = var_opt_fields) dput(result) ``` @@ -427,9 +429,9 @@ dput(result) Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **character**| Project-space to import into. | - **opt_fields** | Enum [none, command, progress, affectedIds] | Set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["progress"]] - **input_files** | list( **data.frame** )| | [optional] - **parameters** | [**LcmsSubmissionParameters**](LcmsSubmissionParameters.md)| | [optional] + **input_files** | list( **data.frame** )| Files to import into project. | + **parameters** | [**LcmsSubmissionParameters**](LcmsSubmissionParameters.md)| Parameters for feature alignment and feature finding. | + **opt_fields** | Enum [none, command, progress, affectedIds] | Set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [progress]] ### Return type @@ -450,7 +452,7 @@ No authorization required | **200** | the import job. | - | # **ImportPreprocessedData** -> ImportResult ImportPreprocessedData(project_id, ignore_formulas = FALSE, allow_ms1_only = TRUE, input_files = var.input_files) +> ImportResult ImportPreprocessedData(project_id, input_files, ignore_formulas = FALSE, allow_ms1_only = TRUE) Import already preprocessed ms/ms data from various formats into the specified project Possible formats (ms, mgf, cef, msp) @@ -464,14 +466,14 @@ library(Rsirius) # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to import into. +var_input_files <- c(123) # array[data.frame] | files to import into project var_ignore_formulas <- FALSE # character | (Optional) var_allow_ms1_only <- TRUE # character | (Optional) -var_input_files <- c(123) # array[data.frame] | (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$ImportPreprocessedData(var_project_id, ignore_formulas = var_ignore_formulas, allow_ms1_only = var_allow_ms1_only, input_files = var_input_filesdata_file = "result.txt") -result <- api_instance$projects_api$ImportPreprocessedData(var_project_id, ignore_formulas = var_ignore_formulas, allow_ms1_only = var_allow_ms1_only, input_files = var_input_files) +# result <- api_instance$ImportPreprocessedData(var_project_id, var_input_files, ignore_formulas = var_ignore_formulas, allow_ms1_only = var_allow_ms1_onlydata_file = "result.txt") +result <- api_instance$projects_api$ImportPreprocessedData(var_project_id, var_input_files, ignore_formulas = var_ignore_formulas, allow_ms1_only = var_allow_ms1_only) dput(result) ``` @@ -480,9 +482,9 @@ dput(result) Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **character**| project-space to import into. | + **input_files** | list( **data.frame** )| files to import into project | **ignore_formulas** | **character**| | [optional] [default to FALSE] **allow_ms1_only** | **character**| | [optional] [default to TRUE] - **input_files** | list( **data.frame** )| | [optional] ### Return type @@ -503,7 +505,7 @@ No authorization required | **200** | OK | - | # **ImportPreprocessedDataAsJob** -> Job ImportPreprocessedDataAsJob(project_id, ignore_formulas = FALSE, allow_ms1_only = TRUE, opt_fields = ["progress"], input_files = var.input_files) +> Job ImportPreprocessedDataAsJob(project_id, input_files, ignore_formulas = FALSE, allow_ms1_only = TRUE, opt_fields = [progress]) Import ms/ms data from the given format into the specified project-space as background job. @@ -517,15 +519,15 @@ library(Rsirius) # # prepare function argument(s) var_project_id <- "project_id_example" # character | project-space to import into. +var_input_files <- c(123) # array[data.frame] | var_ignore_formulas <- FALSE # character | (Optional) var_allow_ms1_only <- TRUE # character | (Optional) var_opt_fields <- c("none") # array[character] | set of optional fields to be included. Use 'none' only to override defaults. (Optional) -var_input_files <- c(123) # array[data.frame] | (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$ImportPreprocessedDataAsJob(var_project_id, ignore_formulas = var_ignore_formulas, allow_ms1_only = var_allow_ms1_only, opt_fields = var_opt_fields, input_files = var_input_filesdata_file = "result.txt") -result <- api_instance$projects_api$ImportPreprocessedDataAsJob(var_project_id, ignore_formulas = var_ignore_formulas, allow_ms1_only = var_allow_ms1_only, opt_fields = var_opt_fields, input_files = var_input_files) +# result <- api_instance$ImportPreprocessedDataAsJob(var_project_id, var_input_files, ignore_formulas = var_ignore_formulas, allow_ms1_only = var_allow_ms1_only, opt_fields = var_opt_fieldsdata_file = "result.txt") +result <- api_instance$projects_api$ImportPreprocessedDataAsJob(var_project_id, var_input_files, ignore_formulas = var_ignore_formulas, allow_ms1_only = var_allow_ms1_only, opt_fields = var_opt_fields) dput(result) ``` @@ -534,10 +536,10 @@ dput(result) Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **character**| project-space to import into. | + **input_files** | list( **data.frame** )| | **ignore_formulas** | **character**| | [optional] [default to FALSE] **allow_ms1_only** | **character**| | [optional] [default to TRUE] - **opt_fields** | Enum [none, command, progress, affectedIds] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["progress"]] - **input_files** | list( **data.frame** )| | [optional] + **opt_fields** | Enum [none, command, progress, affectedIds] | set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to [progress]] ### Return type @@ -558,7 +560,7 @@ No authorization required | **200** | the import job. | - | # **OpenProject** -> ProjectInfo OpenProject(project_id, path_to_project = var.path_to_project, opt_fields = ["none"]) +> ProjectInfo OpenProject(project_id, path_to_project = var.path_to_project, opt_fields = [none]) Open an existing project-space and make it accessible via the given projectId. @@ -588,7 +590,7 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **character**| unique name/identifier that shall be used to access the opened project-space. Must consist only of [a-zA-Z0-9_-]. | **path_to_project** | **character**| 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. | [optional] - **opt_fields** | Enum [none, compatibilityInfo, sizeInformation] | | [optional] [default to ["none"]] + **opt_fields** | Enum [none, compatibilityInfo, sizeInformation] | | [optional] [default to [none]] ### Return type diff --git a/client-api_r/generated/docs/QuantificationTableExperimental.md b/client-api_r/generated/docs/QuantTableExperimental.md similarity index 67% rename from client-api_r/generated/docs/QuantificationTableExperimental.md rename to client-api_r/generated/docs/QuantTableExperimental.md index 105088dc..bc4d99fd 100644 --- a/client-api_r/generated/docs/QuantificationTableExperimental.md +++ b/client-api_r/generated/docs/QuantTableExperimental.md @@ -1,13 +1,12 @@ -# Rsirius::QuantificationTableExperimental +# Rsirius::QuantTableExperimental EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**quantificationType** | **character** | | [optional] [Enum: [APEX_HEIGHT]] -**rowType** | **character** | | [optional] [Enum: [FEATURES]] -**columnType** | **character** | | [optional] [Enum: [SAMPLES]] +**quantificationMeasure** | **character** | | [optional] [Enum: [APEX_INTENSITY, AREA_UNDER_CURVE]] +**rowType** | **character** | | [optional] [Enum: [FEATURES, COMPOUNDS]] **rowIds** | **array[integer]** | | [optional] **columnIds** | **array[integer]** | | [optional] **rowNames** | **array[character]** | | [optional] diff --git a/client-api_r/generated/docs/Run.md b/client-api_r/generated/docs/Run.md new file mode 100644 index 00000000..956854b9 --- /dev/null +++ b/client-api_r/generated/docs/Run.md @@ -0,0 +1,16 @@ +# Rsirius::Run + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**runId** | **character** | Identifier | [optional] +**name** | **character** | Informative, human-readable name of this run | [optional] +**source** | **character** | Source location | [optional] +**chromatography** | **character** | | [optional] +**ionization** | **character** | | [optional] +**fragmentation** | **character** | | [optional] +**massAnalyzers** | **array[character]** | | [optional] +**tags** | [**map(Tag)**](Tag.md) | Key: tagName, value: tag | [optional] + + diff --git a/client-api_r/generated/docs/RunOptField.md b/client-api_r/generated/docs/RunOptField.md new file mode 100644 index 00000000..18388545 --- /dev/null +++ b/client-api_r/generated/docs/RunOptField.md @@ -0,0 +1,8 @@ +# Rsirius::RunOptField + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + + diff --git a/client-api_r/generated/docs/RunsApi.md b/client-api_r/generated/docs/RunsApi.md new file mode 100644 index 00000000..f3186b1f --- /dev/null +++ b/client-api_r/generated/docs/RunsApi.md @@ -0,0 +1,435 @@ +# RunsApi + +All URIs are relative to *http://localhost:8080* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**AddTagsToRunExperimental**](RunsApi.md#AddTagsToRunExperimental) | **PUT** /api/projects/{projectId}/runs/tags/{runId} | [EXPERIMENTAL] Add tags to a run in the project +[**ComputeFoldChangeForBlankSubtraction**](RunsApi.md#ComputeFoldChangeForBlankSubtraction) | **PUT** /api/projects/{projectId}/runs/blanksubtract/compute | **EXPERIMENTAL** Compute the fold changes that are required for the fold change filter +[**GetRunExperimental**](RunsApi.md#GetRunExperimental) | **GET** /api/projects/{projectId}/runs/{runId} | [EXPERIMENTAL] Get run with the given identifier from the specified project-space +[**GetRunPageExperimental**](RunsApi.md#GetRunPageExperimental) | **GET** /api/projects/{projectId}/runs/page | [EXPERIMENTAL] Get all available runs in the given project-space +[**GetRunsByGroupExperimental**](RunsApi.md#GetRunsByGroupExperimental) | **GET** /api/projects/{projectId}/runs/grouped | [EXPERIMENTAL] Get runs by tag group +[**GetRunsByTagExperimental**](RunsApi.md#GetRunsByTagExperimental) | **GET** /api/projects/{projectId}/runs/tagged | [EXPERIMENTAL] Get runs by tag +[**GetTagsForRunExperimental**](RunsApi.md#GetTagsForRunExperimental) | **GET** /api/projects/{projectId}/runs/tags/{objectId} | [EXPERIMENTAL] Get all tags associated with this Run +[**RemoveTagFromRunExperimental**](RunsApi.md#RemoveTagFromRunExperimental) | **DELETE** /api/projects/{projectId}/runs/tags/{runId}/{tagName} | [EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space + + +# **AddTagsToRunExperimental** +> array[Tag] AddTagsToRunExperimental(project_id, run_id, tag) + +[EXPERIMENTAL] Add tags to a run in the project + +[EXPERIMENTAL] Add tags to a run in the project. Tags with the same name will be overwritten.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Add tags to a run in the project +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to add to. +var_run_id <- "run_id_example" # character | run to add tags to. +var_tag <- c(Tag$new("tagName_example", TODO)) # array[Tag] | tags to add. + +api_instance <- rsirius_api$new() +# to save the result into a file, simply add the optional `data_file` parameter, e.g. +# result <- api_instance$AddTagsToRunExperimental(var_project_id, var_run_id, var_tagdata_file = "result.txt") +result <- api_instance$runs_api$AddTagsToRunExperimental(var_project_id, var_run_id, var_tag) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to add to. | + **run_id** | **character**| run to add tags to. | + **tag** | list( [**Tag**](Tag.md) )| tags to add. | + +### Return type + +[**array[Tag]**](Tag.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | the tags that have been added | - | + +# **ComputeFoldChangeForBlankSubtraction** +> Job ComputeFoldChangeForBlankSubtraction(project_id, sample_type_fold_change_request, opt_fields = ["progress"]) + +**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter + +**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter.
This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.
+ +### Example +```R +library(Rsirius) + +# **EXPERIMENTAL** Compute the fold changes that are required for the fold change filter +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to compute the fold change in. +var_sample_type_fold_change_request <- SampleTypeFoldChangeRequest$new(c("sampleRunIds_example"), c("blankRunIds_example"), c("controlRunIds_example")) # SampleTypeFoldChangeRequest | request with lists of run IDs that are sample, blank, and control runs +var_opt_fields <- c("none") # array[character] | job opt fields. (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$ComputeFoldChangeForBlankSubtraction(var_project_id, var_sample_type_fold_change_request, opt_fields = var_opt_fieldsdata_file = "result.txt") +result <- api_instance$runs_api$ComputeFoldChangeForBlankSubtraction(var_project_id, var_sample_type_fold_change_request, opt_fields = var_opt_fields) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to compute the fold change in. | + **sample_type_fold_change_request** | [**SampleTypeFoldChangeRequest**](SampleTypeFoldChangeRequest.md)| request with lists of run IDs that are sample, blank, and control runs | + **opt_fields** | Enum [none, command, progress, affectedIds] | job opt fields. | [optional] [default to ["progress"]] + +### Return type + +[**Job**](Job.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + +# **GetRunExperimental** +> Run GetRunExperimental(project_id, run_id, opt_fields = []) + +[EXPERIMENTAL] Get run with the given identifier from the specified project-space + +[EXPERIMENTAL] Get run with the given identifier from the specified project-space.[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Get run with the given identifier from the specified project-space +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to read from. +var_run_id <- "run_id_example" # character | identifier of run to access. +var_opt_fields <- c(RunOptField$new()) # array[RunOptField] | set of optional fields to be included. Use 'none' only to override defaults. (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$GetRunExperimental(var_project_id, var_run_id, opt_fields = var_opt_fieldsdata_file = "result.txt") +result <- api_instance$runs_api$GetRunExperimental(var_project_id, var_run_id, opt_fields = var_opt_fields) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to read from. | + **run_id** | **character**| identifier of run to access. | + **opt_fields** | list( [**RunOptField**](RunOptField.md) )| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to []] + +### Return type + +[**Run**](Run.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | Run with tags (if specified). | - | + +# **GetRunPageExperimental** +> PagedModelRun GetRunPageExperimental(project_id, page = 0, size = 20, sort = var.sort, opt_fields = []) + +[EXPERIMENTAL] Get all available runs in the given project-space + +[EXPERIMENTAL] Get all available runs in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Get all available runs in the given project-space +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to read from. +var_page <- 0 # integer | Zero-based page index (0..N) (Optional) +var_size <- 20 # integer | The size of the page to be returned (Optional) +var_sort <- c("inner_example") # array[character] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (Optional) +var_opt_fields <- c(RunOptField$new()) # array[RunOptField] | set of optional fields to be included. Use 'none' only to override defaults. (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$GetRunPageExperimental(var_project_id, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fieldsdata_file = "result.txt") +result <- api_instance$runs_api$GetRunPageExperimental(var_project_id, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fields) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to read from. | + **page** | **integer**| Zero-based page index (0..N) | [optional] [default to 0] + **size** | **integer**| The size of the page to be returned | [optional] [default to 20] + **sort** | list( **character** )| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] + **opt_fields** | list( [**RunOptField**](RunOptField.md) )| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to []] + +### Return type + +[**PagedModelRun**](PagedModelRun.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | Runs with tags (if specified). | - | + +# **GetRunsByGroupExperimental** +> PagedModelRun GetRunsByGroupExperimental(project_id, group_name, page = 0, size = 20, sort = var.sort, opt_fields = ["none"]) + +[EXPERIMENTAL] Get runs by tag group + +[EXPERIMENTAL] Get runs by tag group.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Get runs by tag group +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to delete from. +var_group_name <- "group_name_example" # character | tag group name. +var_page <- 0 # integer | Zero-based page index (0..N) (Optional) +var_size <- 20 # integer | The size of the page to be returned (Optional) +var_sort <- c("inner_example") # array[character] | Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. (Optional) +var_opt_fields <- c(RunOptField$new()) # array[RunOptField] | set of optional fields to be included. Use 'none' only to override defaults. (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$GetRunsByGroupExperimental(var_project_id, var_group_name, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fieldsdata_file = "result.txt") +result <- api_instance$runs_api$GetRunsByGroupExperimental(var_project_id, var_group_name, page = var_page, size = var_size, sort = var_sort, opt_fields = var_opt_fields) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to delete from. | + **group_name** | **character**| tag group name. | + **page** | **integer**| Zero-based page index (0..N) | [optional] [default to 0] + **size** | **integer**| The size of the page to be returned | [optional] [default to 20] + **sort** | list( **character** )| Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. | [optional] + **opt_fields** | list( [**RunOptField**](RunOptField.md) )| set of optional fields to be included. Use 'none' only to override defaults. | [optional] [default to ["none"]] + +### Return type + +[**PagedModelRun**](PagedModelRun.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | tagged runs | - | + +# **GetRunsByTagExperimental** +> PagedModelRun GetRunsByTagExperimental(project_id, filter = "", page = 0, size = 20, sort = var.sort, opt_fields = []) + +[EXPERIMENTAL] Get runs by tag + +[EXPERIMENTAL] Get runs by tag.
The filter string must contain one or more clauses. A clause is prefÃxed by a field name.
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). Tag name based field need to be prefixed with the namespace tags.. Possible value types of tags are bool, integer, real, text, date, or time - tag value The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.
A clause may be:
tags.MyTagA:sampletags.MyTagA:"Some Text"tags.MyTagA:/[mb]oat/tags.MyTagB<3[ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3] Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )
The syntax allows to build complex filter queries such as:
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
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to delete from. +var_run_id <- "run_id_example" # character | run to delete tag from. +var_tag_name <- "tag_name_example" # character | name of the tag to delete. + +api_instance <- rsirius_api$new() +api_instance$runs_api$RemoveTagFromRunExperimental(var_project_id, var_run_id, var_tag_name) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to delete from. | + **run_id** | **character**| run to delete tag from. | + **tag_name** | **character**| name of the tag to delete. | + +### 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 | +|-------------|-------------|------------------| +| **200** | OK | - | + diff --git a/client-api_r/generated/docs/SampleTypeFoldChangeRequest.md b/client-api_r/generated/docs/SampleTypeFoldChangeRequest.md new file mode 100644 index 00000000..ec716182 --- /dev/null +++ b/client-api_r/generated/docs/SampleTypeFoldChangeRequest.md @@ -0,0 +1,11 @@ +# Rsirius::SampleTypeFoldChangeRequest + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**sampleRunIds** | **array[character]** | | [optional] +**blankRunIds** | **array[character]** | | [optional] +**controlRunIds** | **array[character]** | | [optional] + + diff --git a/client-api_r/generated/docs/SearchableDatabasesApi.md b/client-api_r/generated/docs/SearchableDatabasesApi.md index 20ae4fd3..4b7dbd7d 100644 --- a/client-api_r/generated/docs/SearchableDatabasesApi.md +++ b/client-api_r/generated/docs/SearchableDatabasesApi.md @@ -284,7 +284,7 @@ No authorization required | **200** | OK | - | # **ImportIntoDatabase** -> SearchableDatabase ImportIntoDatabase(database_id, buffer_size = 1000, input_files = var.input_files) +> SearchableDatabase ImportIntoDatabase(database_id, input_files, buffer_size = 1000, bio_transformer_parameters = var.bio_transformer_parameters) Start import of structure and spectra files into the specified database. @@ -298,13 +298,14 @@ library(Rsirius) # # prepare function argument(s) var_database_id <- "database_id_example" # character | database to import into +var_input_files <- c(123) # array[data.frame] | files to be imported var_buffer_size <- 1000 # integer | (Optional) -var_input_files <- c(123) # array[data.frame] | (Optional) +var_bio_transformer_parameters <- BioTransformerParameters$new("RULE_BASED", "BT_RULE_BASED", c(BioTransformerSequenceStep$new("PHASE_1_CYP450", 123)), "useDB_example") # BioTransformerParameters | configuration for biotransformer execution. If null, BioTransformer is not applied. (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$ImportIntoDatabase(var_database_id, buffer_size = var_buffer_size, input_files = var_input_filesdata_file = "result.txt") -result <- api_instance$searchable_databases_api$ImportIntoDatabase(var_database_id, buffer_size = var_buffer_size, input_files = var_input_files) +# result <- api_instance$ImportIntoDatabase(var_database_id, var_input_files, buffer_size = var_buffer_size, bio_transformer_parameters = var_bio_transformer_parametersdata_file = "result.txt") +result <- api_instance$searchable_databases_api$ImportIntoDatabase(var_database_id, var_input_files, buffer_size = var_buffer_size, bio_transformer_parameters = var_bio_transformer_parameters) dput(result) ``` @@ -313,8 +314,9 @@ dput(result) Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **database_id** | **character**| database to import into | + **input_files** | list( **data.frame** )| files to be imported | **buffer_size** | **integer**| | [optional] [default to 1000] - **input_files** | list( **data.frame** )| | [optional] + **bio_transformer_parameters** | [**BioTransformerParameters**](BioTransformerParameters.md)| configuration for biotransformer execution. If null, BioTransformer is not applied. | [optional] ### Return type @@ -332,7 +334,7 @@ No authorization required ### HTTP response details | Status code | Description | Response headers | |-------------|-------------|------------------| -| **200** | Job of the import command to be executed. | - | +| **200** | Meta-Information of the affected database after the import has been performed. | - | # **RemoveDatabase** > RemoveDatabase(database_id, delete = FALSE) diff --git a/client-api_r/generated/docs/SecurityContext.md b/client-api_r/generated/docs/SecurityContext.md new file mode 100644 index 00000000..d97a00d1 --- /dev/null +++ b/client-api_r/generated/docs/SecurityContext.md @@ -0,0 +1,9 @@ +# Rsirius::SecurityContext + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**principal** | [**SecurityContextPrincipal**](SecurityContext_principal.md) | | [optional] + + diff --git a/client-api_r/generated/docs/SecurityContextPrincipal.md b/client-api_r/generated/docs/SecurityContextPrincipal.md new file mode 100644 index 00000000..8974aee3 --- /dev/null +++ b/client-api_r/generated/docs/SecurityContextPrincipal.md @@ -0,0 +1,9 @@ +# Rsirius::SecurityContextPrincipal + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**name** | **character** | | [optional] + + diff --git a/client-api_r/generated/docs/Sirius.md b/client-api_r/generated/docs/Sirius.md index 4e0efc9b..a0657ffc 100644 --- a/client-api_r/generated/docs/Sirius.md +++ b/client-api_r/generated/docs/Sirius.md @@ -20,8 +20,8 @@ Name | Type | Description | Notes **enforcedFormulaConstraints** | **character** | These configurations hold the information how to autodetect elements based on the given formula constraints. Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored. <p> Enforced: Enforced elements are always considered | [optional] **fallbackFormulaConstraints** | **character** | These configurations hold the information how to autodetect elements based on the given formula constraints. Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored. <p> Fallback: Fallback elements are used, if the auto-detection fails (e.g. no isotope pattern available) | [optional] **detectableElements** | **array[character]** | These configurations hold the information how to autodetect elements based on the given formula constraints. Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored. <p> Detectable: Detectable elements are added to the chemical alphabet, if there are indications for them (e.g. in isotope pattern) | [optional] -**ilpTimeout** | [**Timeout**](Timeout.md) | | [optional] -**useHeuristic** | [**UseHeuristic**](UseHeuristic.md) | | [optional] +**ilpTimeout** | [**Timeout**](Timeout.md) | Timout settings for the ILP solver used for fragmentation tree computation secondsPerInstance: Set the maximum number of seconds for computing a single compound. Set to 0 to disable the time constraint. secondsPerTree: Set the maximum number of seconds for a single molecular formula check. Set to 0 to disable the time constraint | [optional] +**useHeuristic** | [**UseHeuristic**](UseHeuristic.md) | Mass thresholds for heuristic fragmentation tree computation which dramatically speeds up computations. useHeuristicAboveMz: For compounds above this threshold fragmentation trees will be computed heuristically for ranking. Tree that will be kept (numberOfCandidates) will be recomputed exactly useOnlyHeuristicAboveMz:For compounds above this threshold fragmentation trees will be computed heuristically. | [optional] **injectSpecLibMatchFormulas** | **character** | If true formula candidates that belong to spectral library matches above a certain threshold will we inject/preserved for further analyses no matter which score they have or which filter is applied | [optional] **minScoreToInjectSpecLibMatch** | **numeric** | Similarity Threshold to inject formula candidates no matter which score/rank they have or which filter settings are applied. If threshold >= 0 formulas candidates with reference spectrum similarity above the threshold will be injected. | [optional] **minPeaksToInjectSpecLibMatch** | **integer** | Matching peaks threshold to inject formula candidates no matter which score they have or which filter is applied. | [optional] diff --git a/client-api_r/generated/docs/SpectralLibraryMatch.md b/client-api_r/generated/docs/SpectralLibraryMatch.md index d63613f4..4a4a6d47 100644 --- a/client-api_r/generated/docs/SpectralLibraryMatch.md +++ b/client-api_r/generated/docs/SpectralLibraryMatch.md @@ -6,8 +6,9 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **specMatchId** | **character** | | [optional] **rank** | **integer** | | [optional] -**similarity** | **numeric** | | -**sharedPeaks** | **integer** | | [optional] +**similarity** | **numeric** | Similarity between query and reference spectrum | +**sharedPeaks** | **integer** | Number of shared/matched peaks | [optional] +**sharedPeakMapping** | [**array[PeakPair]**](PeakPair.md) | List of paired/matched peak indices. Maps indices of peaks from the query spectrum (mass sorted) to indices of matched peaks in the reference spectrum (mass sorted) | [optional] **querySpectrumIndex** | **integer** | | **dbName** | **character** | | [optional] **dbId** | **character** | | [optional] @@ -15,9 +16,12 @@ Name | Type | Description | Notes **splash** | **character** | | [optional] **molecularFormula** | **character** | | [optional] **adduct** | **character** | | [optional] -**exactMass** | **character** | | [optional] +**exactMass** | **numeric** | | [optional] **smiles** | **character** | | [optional] +**type** | **character** | | [optional] [default to "IDENTITY"] [Enum: [IDENTITY, ANALOG]] **inchiKey** | **character** | | +**referenceSpectrumType** | **character** | | [optional] [default to "SPECTRUM"] [Enum: [SPECTRUM, MERGED_SPECTRUM]] **referenceSpectrum** | [**BasicSpectrum**](BasicSpectrum.md) | | [optional] +**querySpectrumType** | **character** | | [optional] [Enum: [SPECTRUM, MERGED_SPECTRUM]] diff --git a/client-api_r/generated/docs/SpectralLibrarySearch.md b/client-api_r/generated/docs/SpectralLibrarySearch.md index 9ebaeb69..a96c07da 100644 --- a/client-api_r/generated/docs/SpectralLibrarySearch.md +++ b/client-api_r/generated/docs/SpectralLibrarySearch.md @@ -7,8 +7,13 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **enabled** | **character** | tags whether the tool is enabled | [optional] **spectraSearchDBs** | **array[character]** | Structure Databases with Reference spectra to search in. <p> Defaults to BIO + Custom Databases. Possible values are available to Database API. | [optional] -**peakDeviationPpm** | **numeric** | Maximum allowed mass deviation in ppm for matching peaks. | [optional] **precursorDeviationPpm** | **numeric** | Maximum allowed mass deviation in ppm for matching the precursor. If not specified, the same value as for the peaks is used. | [optional] -**scoring** | **character** | Specify scoring method to match spectra INTENSITY: Intensity weighted. Each peak matches at most one peak in the other spectrum. GAUSSIAN: Treat peaks as (un-normalized) Gaussians and score overlapping areas of PDFs. Each peak might score against multiple peaks in the other spectrum. 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. | [optional] [Enum: [INTENSITY, GAUSSIAN, MODIFIED_COSINE]] +**minSimilarity** | **numeric** | Minimal spectral similarity of a spectral match to be considered a hit. | [optional] +**minNumOfPeaks** | **integer** | Minimal number of matching peaks of a spectral match to be considered a hit. | [optional] +**enableAnalogueSearch** | **character** | Enable analogue search in addition to the identity spectral library search | [optional] +**minSimilarityAnalogue** | **numeric** | Minimal spectral similarity of a spectral match to be considered an analogue hit. | [optional] +**minNumOfPeaksAnalogue** | **integer** | Minimal number of matching peaks of a spectral match to be considered an analogue hit. | [optional] +**scoring** | **character** | NO LONGER SUPPORTED (IGNORED) Specify scoring method to match spectra INTENSITY: Intensity weighted. Each peak matches at most one peak in the other spectrum. GAUSSIAN: Treat peaks as (un-normalized) Gaussians and score overlapping areas of PDFs. Each peak might score against multiple peaks in the other spectrum. 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. | [optional] [Enum: [INTENSITY, GAUSSIAN, MODIFIED_COSINE, FAST_COSINE]] +**peakDeviationPpm** | **numeric** | NO LONGER SUPPORTED (IGNORED) Maximum allowed mass deviation in ppm for matching peaks. | [optional] diff --git a/client-api_r/generated/docs/SpectrumAnnotation.md b/client-api_r/generated/docs/SpectrumAnnotation.md index fade03c2..824bcd18 100644 --- a/client-api_r/generated/docs/SpectrumAnnotation.md +++ b/client-api_r/generated/docs/SpectrumAnnotation.md @@ -9,7 +9,9 @@ Name | Type | Description | Notes **exactMass** | **numeric** | Exact mass based on the annotated molecular formula and ionization | [optional] **massDeviationMz** | **numeric** | Absolute mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in mDa | [optional] **massDeviationPpm** | **numeric** | Relative mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in ppm | [optional] -**structureAnnotationSmiles** | **character** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation Substructure highlighting (bond and atom indices) refer to this specific SMILES. If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might not match correctly anymore. Null if substructure annotation not available or not requested. | [optional] -**structureAnnotationScore** | **numeric** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles) Null if substructure annotation not available or not requested. | [optional] +**structureAnnotationSmiles** | **character** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. <p> Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation Substructure highlighting (bond and atom indices) refer to this specific SMILES. If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might not match correctly anymore. <p> Null if substructure annotation not available or not requested. | [optional] +**structureAnnotationName** | **character** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. <p> Name of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation. <p> Null if substructure annotation not available or not requested. | [optional] +**structureAnnotationSvg** | **character** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. <p> SVG graphics of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation Substructure highlighting (bond and atom indices) refers to this SVG. <p> Null if substructure annotation not available or not requested. | [optional] +**structureAnnotationScore** | **numeric** | EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. <p> Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles) <p> Null if substructure annotation not available or not requested. | [optional] diff --git a/client-api_r/generated/docs/StatisticsTable.md b/client-api_r/generated/docs/StatisticsTable.md new file mode 100644 index 00000000..d7f79e37 --- /dev/null +++ b/client-api_r/generated/docs/StatisticsTable.md @@ -0,0 +1,17 @@ +# Rsirius::StatisticsTable + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**statisticsType** | **character** | | [optional] [Enum: [FOLD_CHANGE]] +**aggregationType** | **character** | | [optional] [Enum: [AVG, MIN, MAX]] +**quantificationMeasure** | **character** | | [optional] [Enum: [APEX_INTENSITY, AREA_UNDER_CURVE]] +**rowType** | **character** | | [optional] [Enum: [FEATURES, COMPOUNDS]] +**rowIds** | **array[character]** | | [optional] +**columnNames** | **array[character]** | | [optional] +**columnLeftGroups** | **array[character]** | | [optional] +**columnRightGroups** | **array[character]** | | [optional] +**values** | [**array[array[numeric]]**](array.md) | | [optional] + + diff --git a/client-api_r/generated/docs/StoredJobSubmission.md b/client-api_r/generated/docs/StoredJobSubmission.md index ba384520..71dea661 100644 --- a/client-api_r/generated/docs/StoredJobSubmission.md +++ b/client-api_r/generated/docs/StoredJobSubmission.md @@ -6,6 +6,6 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **name** | **character** | Unique name to identify this JobSubmission (job config). | **editable** | **character** | False for predefined configs which are not editable and not removable. | -**jobSubmission** | [**JobSubmission**](JobSubmission.md) | | +**jobSubmission** | [**JobSubmission**](JobSubmission.md) | The JobSubmission identified by the name | diff --git a/client-api_r/generated/docs/StructureCandidate.md b/client-api_r/generated/docs/StructureCandidate.md index 7e0daaba..f6b9a89c 100644 --- a/client-api_r/generated/docs/StructureCandidate.md +++ b/client-api_r/generated/docs/StructureCandidate.md @@ -7,8 +7,9 @@ Name | Type | Description | Notes **inchiKey** | **character** | | [optional] **smiles** | **character** | | [optional] **structureName** | **character** | | [optional] -**xlogP** | **numeric** | | [optional] +**structureSvg** | **character** | SVG graphics of the structure candidate OPTIONAL: needs to be added by parameter | [optional] **dbLinks** | [**array[DBLink]**](DBLink.md) | List of structure database links belonging to this structure candidate OPTIONAL: needs to be added by parameter | [optional] **spectralLibraryMatches** | [**array[SpectralLibraryMatch]**](SpectralLibraryMatch.md) | List of spectral library matches belonging to this structure candidate OPTIONAL: needs to be added by parameter | [optional] +**xlogP** | **numeric** | | [optional] diff --git a/client-api_r/generated/docs/StructureCandidateFormula.md b/client-api_r/generated/docs/StructureCandidateFormula.md index 2a64b6be..be876c20 100644 --- a/client-api_r/generated/docs/StructureCandidateFormula.md +++ b/client-api_r/generated/docs/StructureCandidateFormula.md @@ -7,14 +7,15 @@ Name | Type | Description | Notes **inchiKey** | **character** | | [optional] **smiles** | **character** | | [optional] **structureName** | **character** | | [optional] -**xlogP** | **numeric** | | [optional] +**structureSvg** | **character** | SVG graphics of the structure candidate OPTIONAL: needs to be added by parameter | [optional] **dbLinks** | [**array[DBLink]**](DBLink.md) | List of structure database links belonging to this structure candidate OPTIONAL: needs to be added by parameter | [optional] **spectralLibraryMatches** | [**array[SpectralLibraryMatch]**](SpectralLibraryMatch.md) | List of spectral library matches belonging to this structure candidate OPTIONAL: needs to be added by parameter | [optional] +**xlogP** | **numeric** | | [optional] **rank** | **integer** | the overall rank of this candidate among all candidates of this feature | [optional] **csiScore** | **numeric** | CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID This is the score used for ranking structure candidates | [optional] **tanimotoSimilarity** | **numeric** | Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID | [optional] **mcesDistToTopHit** | **numeric** | Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list. | [optional] -**fingerprint** | [**BinaryFingerprint**](BinaryFingerprint.md) | | [optional] +**fingerprint** | [**BinaryFingerprint**](BinaryFingerprint.md) | Array containing the indices of the molecular fingerprint that are available in the structure (1 if present) OPTIONAL: needs to be added by parameter | [optional] **molecularFormula** | **character** | Molecular formula of this candidate | [optional] **adduct** | **character** | Adduct of this candidate | [optional] **formulaId** | **character** | Id of the corresponding Formula candidate | [optional] diff --git a/client-api_r/generated/docs/StructureCandidateScored.md b/client-api_r/generated/docs/StructureCandidateScored.md index 84f90521..1dccb329 100644 --- a/client-api_r/generated/docs/StructureCandidateScored.md +++ b/client-api_r/generated/docs/StructureCandidateScored.md @@ -7,13 +7,14 @@ Name | Type | Description | Notes **inchiKey** | **character** | | [optional] **smiles** | **character** | | [optional] **structureName** | **character** | | [optional] -**xlogP** | **numeric** | | [optional] +**structureSvg** | **character** | SVG graphics of the structure candidate OPTIONAL: needs to be added by parameter | [optional] **dbLinks** | [**array[DBLink]**](DBLink.md) | List of structure database links belonging to this structure candidate OPTIONAL: needs to be added by parameter | [optional] **spectralLibraryMatches** | [**array[SpectralLibraryMatch]**](SpectralLibraryMatch.md) | List of spectral library matches belonging to this structure candidate OPTIONAL: needs to be added by parameter | [optional] +**xlogP** | **numeric** | | [optional] **rank** | **integer** | the overall rank of this candidate among all candidates of this feature | [optional] **csiScore** | **numeric** | CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID This is the score used for ranking structure candidates | [optional] **tanimotoSimilarity** | **numeric** | Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID | [optional] **mcesDistToTopHit** | **numeric** | Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list. | [optional] -**fingerprint** | [**BinaryFingerprint**](BinaryFingerprint.md) | | [optional] +**fingerprint** | [**BinaryFingerprint**](BinaryFingerprint.md) | Array containing the indices of the molecular fingerprint that are available in the structure (1 if present) OPTIONAL: needs to be added by parameter | [optional] diff --git a/client-api_r/generated/docs/Subscription.md b/client-api_r/generated/docs/Subscription.md index 95697bd6..3fd709f8 100644 --- a/client-api_r/generated/docs/Subscription.md +++ b/client-api_r/generated/docs/Subscription.md @@ -19,5 +19,6 @@ Name | Type | Description | Notes **name** | **character** | | [optional] **tos** | **character** | | [optional] **pp** | **character** | | [optional] +**allowedFeatures** | [**AllowedFeatures**](AllowedFeatures.md) | | [optional] diff --git a/client-api_r/generated/docs/Tag.md b/client-api_r/generated/docs/Tag.md new file mode 100644 index 00000000..90b8b879 --- /dev/null +++ b/client-api_r/generated/docs/Tag.md @@ -0,0 +1,10 @@ +# Rsirius::Tag + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**tagName** | **character** | Name of the tag as defined by the corresponding TagDefinition Links tag object to their definition. | +**value** | [**AnyType**](.md) | | [optional] + + diff --git a/client-api_r/generated/docs/TagDefinition.md b/client-api_r/generated/docs/TagDefinition.md new file mode 100644 index 00000000..34a1f7bf --- /dev/null +++ b/client-api_r/generated/docs/TagDefinition.md @@ -0,0 +1,16 @@ +# Rsirius::TagDefinition + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**tagName** | **character** | Name of this tag defined by this definition (key) | +**description** | **character** | A human-readable description about the purpose of this tag. | [optional] +**tagType** | **character** | A simple string based identifier to specify the type/scope/purpose of this tag. | [optional] +**valueType** | **character** | | [Enum: [NONE, BOOLEAN, INTEGER, REAL, TEXT, DATE, TIME]] +**possibleValues** | [**array[AnyType]**](AnyType.md) | | [optional] +**minValue** | [**AnyType**](.md) | | [optional] +**maxValue** | [**AnyType**](.md) | | [optional] +**editable** | **character** | | [optional] + + diff --git a/client-api_r/generated/docs/TagDefinitionImport.md b/client-api_r/generated/docs/TagDefinitionImport.md new file mode 100644 index 00000000..a10c16d5 --- /dev/null +++ b/client-api_r/generated/docs/TagDefinitionImport.md @@ -0,0 +1,15 @@ +# Rsirius::TagDefinitionImport + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**tagName** | **character** | Name of this tag defined by this definition (key) | +**description** | **character** | A human-readable description about the purpose of this tag. | [optional] +**tagType** | **character** | A simple string based identifier to specify the type/scope/purpose of this tag. | [optional] +**valueType** | **character** | | [Enum: [NONE, BOOLEAN, INTEGER, REAL, TEXT, DATE, TIME]] +**possibleValues** | [**array[AnyType]**](AnyType.md) | | [optional] +**minValue** | [**AnyType**](.md) | | [optional] +**maxValue** | [**AnyType**](.md) | | [optional] + + diff --git a/client-api_r/generated/docs/TagGroup.md b/client-api_r/generated/docs/TagGroup.md new file mode 100644 index 00000000..db797d6f --- /dev/null +++ b/client-api_r/generated/docs/TagGroup.md @@ -0,0 +1,11 @@ +# Rsirius::TagGroup + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**groupName** | **character** | Name of this Grouping query. | [optional] +**luceneQuery** | **character** | Query used to group the entities in lucene format. | [optional] +**groupType** | **character** | | [optional] + + diff --git a/client-api_r/generated/docs/TagsApi.md b/client-api_r/generated/docs/TagsApi.md new file mode 100644 index 00000000..ee2f9f3c --- /dev/null +++ b/client-api_r/generated/docs/TagsApi.md @@ -0,0 +1,458 @@ +# TagsApi + +All URIs are relative to *http://localhost:8080* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**AddGroup**](TagsApi.md#AddGroup) | **POST** /api/projects/{projectId}/groups/{groupName} | [EXPERIMENTAL] Group tags in the project +[**AddPossibleValuesToTagDefinition**](TagsApi.md#AddPossibleValuesToTagDefinition) | **PATCH** /api/projects/{projectId}/tags/{tagName} | [EXPERIMENTAL] Add a possible value to the tag definition in the project +[**CreateTags**](TagsApi.md#CreateTags) | **PUT** /api/projects/{projectId}/tags | [EXPERIMENTAL] Add tags to the project +[**DeleteGroup**](TagsApi.md#DeleteGroup) | **DELETE** /api/projects/{projectId}/groups/{groupName} | [EXPERIMENTAL] Delete tag groups with the given name from the specified project-space +[**DeleteTag**](TagsApi.md#DeleteTag) | **DELETE** /api/projects/{projectId}/tags/{tagName} | [EXPERIMENTAL] Delete tag definition with the given name from the specified project-space +[**GetGroupByName**](TagsApi.md#GetGroupByName) | **GET** /api/projects/{projectId}/groups/{groupName} | [EXPERIMENTAL] Get tag group by name in the given project-space +[**GetGroups**](TagsApi.md#GetGroups) | **GET** /api/projects/{projectId}/groups | [EXPERIMENTAL] Get all tag based groups in the given project-space +[**GetTag**](TagsApi.md#GetTag) | **GET** /api/projects/{projectId}/tags/{tagName} | [EXPERIMENTAL] Get tag definition by its name in the given project-space +[**GetTags**](TagsApi.md#GetTags) | **GET** /api/projects/{projectId}/tags | [EXPERIMENTAL] Get all tag definitions in the given project-space + + +# **AddGroup** +> TagGroup AddGroup(project_id, group_name, filter, type) + +[EXPERIMENTAL] Group tags in the project + +[EXPERIMENTAL] Group tags in the project. The group name must not exist in the project.
See /tagged for filter syntax.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Add a possible value to the tag definition in the project +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to add to. +var_tag_name <- "tag_name_example" # character | the tag definition to add the values to +var_request_body <- c(TODO) # array[AnyType] | + +api_instance <- rsirius_api$new() +# to save the result into a file, simply add the optional `data_file` parameter, e.g. +# result <- api_instance$AddPossibleValuesToTagDefinition(var_project_id, var_tag_name, var_request_bodydata_file = "result.txt") +result <- api_instance$tags_api$AddPossibleValuesToTagDefinition(var_project_id, var_tag_name, var_request_body) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to add to. | + **tag_name** | **character**| the tag definition to add the values to | + **request_body** | list( [**AnyType**](AnyType.md) )| | + +### Return type + +[**TagDefinition**](TagDefinition.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | the definitions of the tags that have been added | - | + +# **CreateTags** +> array[TagDefinition] CreateTags(project_id, tag_definition_import) + +[EXPERIMENTAL] Add tags to the project + +[EXPERIMENTAL] Add tags to the project. Tag names must not exist in the project.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Add tags to the project +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to add to. +var_tag_definition_import <- c(TagDefinitionImport$new("tagName_example", "NONE", "description_example", "tagType_example", c(TODO), TODO, TODO)) # array[TagDefinitionImport] | the tag definitions to be created + +api_instance <- rsirius_api$new() +# to save the result into a file, simply add the optional `data_file` parameter, e.g. +# result <- api_instance$CreateTags(var_project_id, var_tag_definition_importdata_file = "result.txt") +result <- api_instance$tags_api$CreateTags(var_project_id, var_tag_definition_import) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to add to. | + **tag_definition_import** | list( [**TagDefinitionImport**](TagDefinitionImport.md) )| the tag definitions to be created | + +### Return type + +[**array[TagDefinition]**](TagDefinition.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | the definitions of the tags that have been created | - | + +# **DeleteGroup** +> DeleteGroup(project_id, group_name) + +[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space + +[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Delete tag groups with the given name from the specified project-space +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to delete from. +var_group_name <- "group_name_example" # character | name of group to delete. + +api_instance <- rsirius_api$new() +api_instance$tags_api$DeleteGroup(var_project_id, var_group_name) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to delete from. | + **group_name** | **character**| name of group to delete. | + +### 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 | +|-------------|-------------|------------------| +| **200** | OK | - | + +# **DeleteTag** +> DeleteTag(project_id, tag_name) + +[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space + +[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space.
This will also remove all tags belonging to this definition from every tagged entity.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Delete tag definition with the given name from the specified project-space +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to delete from. +var_tag_name <- "tag_name_example" # character | name of the tag definition to delete. + +api_instance <- rsirius_api$new() +api_instance$tags_api$DeleteTag(var_project_id, var_tag_name) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to delete from. | + **tag_name** | **character**| name of the tag definition to delete. | + +### 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 | +|-------------|-------------|------------------| +| **200** | OK | - | + +# **GetGroupByName** +> TagGroup GetGroupByName(project_id, group_name) + +[EXPERIMENTAL] Get tag group by name in the given project-space + +[EXPERIMENTAL] Get tag group by name in the given project-space.[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Get tag group by name in the given project-space +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to read from. +var_group_name <- "group_name_example" # character | name of the group + +api_instance <- rsirius_api$new() +# to save the result into a file, simply add the optional `data_file` parameter, e.g. +# result <- api_instance$GetGroupByName(var_project_id, var_group_namedata_file = "result.txt") +result <- api_instance$tags_api$GetGroupByName(var_project_id, var_group_name) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to read from. | + **group_name** | **character**| name of the group | + +### Return type + +[**TagGroup**](TagGroup.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | Tag group. | - | + +# **GetGroups** +> array[TagGroup] GetGroups(project_id, group_type = var.group_type) + +[EXPERIMENTAL] Get all tag based groups in the given project-space + +[EXPERIMENTAL] Get all tag based groups in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Get all tag based groups in the given project-space +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to read from. +var_group_type <- "group_type_example" # character | type of the group (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$GetGroups(var_project_id, group_type = var_group_typedata_file = "result.txt") +result <- api_instance$tags_api$GetGroups(var_project_id, group_type = var_group_type) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to read from. | + **group_type** | **character**| type of the group | [optional] + +### Return type + +[**array[TagGroup]**](TagGroup.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | Groups. | - | + +# **GetTag** +> TagDefinition GetTag(project_id, tag_name) + +[EXPERIMENTAL] Get tag definition by its name in the given project-space + +[EXPERIMENTAL] Get tag definition by its name in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Get tag definition by its name in the given project-space +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to read from. +var_tag_name <- "tag_name_example" # character | name of the tag + +api_instance <- rsirius_api$new() +# to save the result into a file, simply add the optional `data_file` parameter, e.g. +# result <- api_instance$GetTag(var_project_id, var_tag_namedata_file = "result.txt") +result <- api_instance$tags_api$GetTag(var_project_id, var_tag_name) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to read from. | + **tag_name** | **character**| name of the tag | + +### Return type + +[**TagDefinition**](TagDefinition.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | Tag definition. | - | + +# **GetTags** +> array[TagDefinition] GetTags(project_id, tag_type = var.tag_type) + +[EXPERIMENTAL] Get all tag definitions in the given project-space + +[EXPERIMENTAL] Get all tag definitions in the given project-space.
[EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates. + +### Example +```R +library(Rsirius) + +# [EXPERIMENTAL] Get all tag definitions in the given project-space +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | project-space to read from. +var_tag_type <- "tag_type_example" # character | scope of the tag (optional) (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$GetTags(var_project_id, tag_type = var_tag_typedata_file = "result.txt") +result <- api_instance$tags_api$GetTags(var_project_id, tag_type = var_tag_type) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| project-space to read from. | + **tag_type** | **character**| scope of the tag (optional) | [optional] + +### Return type + +[**array[TagDefinition]**](TagDefinition.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | Tag definitions. | - | + diff --git a/client-api_r/generated/docs/TraceExperimental.md b/client-api_r/generated/docs/TraceExperimental.md index 4508448f..707df5f1 100644 --- a/client-api_r/generated/docs/TraceExperimental.md +++ b/client-api_r/generated/docs/TraceExperimental.md @@ -9,6 +9,7 @@ Name | Type | Description | Notes **sampleId** | **character** | | [optional] **sampleName** | **character** | | [optional] **label** | **character** | | [optional] +**color** | **character** | | [optional] **intensities** | **array[numeric]** | | [optional] **annotations** | [**array[TraceAnnotationExperimental]**](TraceAnnotationExperimental.md) | | [optional] **mz** | **numeric** | | [optional] diff --git a/client-api_r/generated/docs/WebServerNamespace.md b/client-api_r/generated/docs/WebServerNamespace.md new file mode 100644 index 00000000..003ec706 --- /dev/null +++ b/client-api_r/generated/docs/WebServerNamespace.md @@ -0,0 +1,9 @@ +# Rsirius::WebServerNamespace + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**value** | **character** | | [optional] + + diff --git a/client-api_r/generated/docs/Zodiac.md b/client-api_r/generated/docs/Zodiac.md index 06a8951e..eea16050 100644 --- a/client-api_r/generated/docs/Zodiac.md +++ b/client-api_r/generated/docs/Zodiac.md @@ -9,7 +9,9 @@ Name | Type | Description | Notes **consideredCandidatesAt300Mz** | **integer** | Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds below 300 m/z. | [optional] **consideredCandidatesAt800Mz** | **integer** | Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds above 800 m/z. | [optional] **runInTwoSteps** | **character** | As default ZODIAC runs a 2-step approach. First running 'good quality compounds' only, and afterwards including the remaining. | [optional] -**edgeFilterThresholds** | [**ZodiacEdgeFilterThresholds**](ZodiacEdgeFilterThresholds.md) | | [optional] -**gibbsSamplerParameters** | [**ZodiacEpochs**](ZodiacEpochs.md) | | [optional] +**edgeFilterThresholds** | [**ZodiacEdgeFilterThresholds**](ZodiacEdgeFilterThresholds.md) | thresholdFilter = Defines the proportion of edges of the complete network which will be ignored. minLocalConnections = Minimum number of compounds to which at least one candidate per compound must be connected to. | [optional] +**gibbsSamplerParameters** | [**ZodiacEpochs**](ZodiacEpochs.md) | iterations: \"Number of epochs to run the Gibbs sampling. When multiple Markov chains are computed, all chains' iterations sum up to this value.\" burnInPeriod: \"Number of epochs considered as 'burn-in period'. numberOfMarkovChains: Number of separate Gibbs sampling runs. | [optional] +**librarySearchAnchors** | [**ZodiacLibraryScoring**](ZodiacLibraryScoring.md) | Configure the use of identity spectral library search results as anchors in ZODIAC network | [optional] +**analogueSearchAnchors** | [**ZodiacAnalogueNodes**](ZodiacAnalogueNodes.md) | Configure the use of analogue spectral library search results as anchors in ZODIAC network | [optional] diff --git a/client-api_r/generated/docs/ZodiacAnalogueNodes.md b/client-api_r/generated/docs/ZodiacAnalogueNodes.md new file mode 100644 index 00000000..5449a99f --- /dev/null +++ b/client-api_r/generated/docs/ZodiacAnalogueNodes.md @@ -0,0 +1,11 @@ +# Rsirius::ZodiacAnalogueNodes + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**enabled** | **character** | | [optional] +**minSimilarity** | **numeric** | | [optional] +**minSharedPeaks** | **integer** | | [optional] + + diff --git a/client-api_r/generated/docs/ZodiacLibraryScoring.md b/client-api_r/generated/docs/ZodiacLibraryScoring.md new file mode 100644 index 00000000..840c4b7c --- /dev/null +++ b/client-api_r/generated/docs/ZodiacLibraryScoring.md @@ -0,0 +1,10 @@ +# Rsirius::ZodiacLibraryScoring + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**enabled** | **character** | | [optional] +**minSimilarity** | **numeric** | | [optional] + + diff --git a/client-api_r/generated/man/ActuatorApi.Rd b/client-api_r/generated/man/ActuatorApi.Rd index ad5b32b5..0df45e5f 100644 --- a/client-api_r/generated/man/ActuatorApi.Rd +++ b/client-api_r/generated/man/ActuatorApi.Rd @@ -40,10 +40,7 @@ library(Rsirius) #Actuator web endpoint 'shutdown' api_instance <- rsirius_api$new() -# to save the result into a file, simply add the optional `data_file` parameter, e.g. -# result <- api_instance$Shutdown(data_file = "result.txt") -result <- api_instance$actuator_api$Shutdown() -dput(result) +api_instance$actuator_api$Shutdown() } @@ -133,20 +130,18 @@ API response (object) with additional information such as HTTP status code, head \subsection{Method \code{Shutdown()}}{ Actuator web endpoint 'shutdown' \subsection{Usage}{ -\if{html}{\out{
DEPRECATED: Spectra are always returned with raw intensities. Use provided normalization factors to normalize on the fly. numeric [optional]} + +\item{\code{maxNormFactor}}{Factor to convert absolute intensities to MAX norm. numeric [optional]} + +\item{\code{sumNormFactor}}{Factor to convert absolute intensities to SUM norm. numeric [optional]} + +\item{\code{l2NormFactor}}{Factor to convert absolute intensities to L2 (Euclidean) norm. numeric [optional]} + +\item{\code{firstPeakNormFactor}}{Factor to convert absolute intensities to normalize intensities by first peak intensity. numeric [optional]} -\item{\code{spectrumAnnotation}}{\link{SpectrumAnnotation} [optional]} +\item{\code{spectrumAnnotation}}{Optional Annotations of this spectrum. \link{SpectrumAnnotation} [optional]} } \if{html}{\out{}} } @@ -77,6 +89,7 @@ df Initialize a new AnnotatedSpectrum class. \subsection{Usage}{ \if{html}{\out{
DEPRECATED: Spectra are always returned with raw intensities. Use provided normalization factors to normalize on the fly.} + +\item{\code{maxNormFactor}}{Factor to convert absolute intensities to MAX norm.} + +\item{\code{sumNormFactor}}{Factor to convert absolute intensities to SUM norm.} + +\item{\code{l2NormFactor}}{Factor to convert absolute intensities to L2 (Euclidean) norm.} + +\item{\code{firstPeakNormFactor}}{Factor to convert absolute intensities to normalize intensities by first peak intensity.} -\item{\code{spectrumAnnotation}}{spectrumAnnotation} +\item{\code{spectrumAnnotation}}{Optional Annotations of this spectrum.} \item{\code{...}}{Other optional arguments.} } diff --git a/client-api_r/generated/man/BasicSpectrum.Rd b/client-api_r/generated/man/BasicSpectrum.Rd index 4c522b4c..17d8e47b 100644 --- a/client-api_r/generated/man/BasicSpectrum.Rd +++ b/client-api_r/generated/man/BasicSpectrum.Rd @@ -44,9 +44,21 @@ df \item{\code{scanNumber}}{Scan number of the spectrum. Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra) integer [optional]} +\item{\code{cosineQuery}}{True if spectrum is in cosine query normalized format. Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra. character} + +\item{\code{precursorPeak}}{A separate precursor peak field to either mark the precursor in the peaklist or provide the precursor peak separately from the spectrum in case the spectrum is in a preprocessed form where the precursor peak has been removed for library matching. NULL if the spectrum does not contain the precursor peak. \link{SimplePeak} [optional]} + \item{\code{peaks}}{The peaks of this spectrum which might contain additional annotations such as molecular formulas. list(\link{SimplePeak})} -\item{\code{absIntensityFactor}}{Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra) numeric [optional]} +\item{\code{absIntensityFactor}}{Factor to convert relative intensities to absolute intensities. Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)
DEPRECATED: Spectra are always returned with raw intensities. Use provided normalization factors to normalize on the fly. numeric [optional]} + +\item{\code{maxNormFactor}}{Factor to convert absolute intensities to MAX norm. numeric [optional]} + +\item{\code{sumNormFactor}}{Factor to convert absolute intensities to SUM norm. numeric [optional]} + +\item{\code{l2NormFactor}}{Factor to convert absolute intensities to L2 (Euclidean) norm. numeric [optional]} + +\item{\code{firstPeakNormFactor}}{Factor to convert absolute intensities to normalize intensities by first peak intensity. numeric [optional]} } \if{html}{\out{
DEPRECATED: Spectra are always returned with raw intensities. Use provided normalization factors to normalize on the fly.} + +\item{\code{maxNormFactor}}{Factor to convert absolute intensities to MAX norm.} + +\item{\code{sumNormFactor}}{Factor to convert absolute intensities to SUM norm.} + +\item{\code{l2NormFactor}}{Factor to convert absolute intensities to L2 (Euclidean) norm.} + +\item{\code{firstPeakNormFactor}}{Factor to convert absolute intensities to normalize intensities by first peak intensity.} \item{\code{...}}{Other optional arguments.} } diff --git a/client-api_r/generated/man/BioTransformerParameters.Rd b/client-api_r/generated/man/BioTransformerParameters.Rd new file mode 100644 index 00000000..bd076ccb --- /dev/null +++ b/client-api_r/generated/man/BioTransformerParameters.Rd @@ -0,0 +1,289 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/bio_transformer_parameters.R +\docType{class} +\name{BioTransformerParameters} +\alias{BioTransformerParameters} +\title{BioTransformerParameters} +\format{ +An \code{R6Class} generator object +} +\description{ +BioTransformerParameters Class + +BioTransformerParameters Class +} +\details{ +Create a new BioTransformerParameters +} +\examples{ + +## ------------------------------------------------ +## Method `BioTransformerParameters$toList` +## ------------------------------------------------ + +# convert array of BioTransformerParameters (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{
Each Feature can have: - One merged MS/MS spectrum (optional) - One merged MS spectrum (optional) - many MS/MS spectra (optional) - many MS spectra (optional)
Each non-merged spectrum has an index which can be used to access the spectrum.
In the future we might add some additional information like chromatographic peak or something similar +The MsData wraps all spectral input data belonging to a (aligned) feature. All spectra fields are optional. However, at least one Spectrum field needs to be set to create a valid MsData Object. The different types of spectra fields can be extended to adapt to other MassSpec measurement techniques not covered yet.
Each Feature can have: - One extracted isotope pattern (optional) - One merged MS/MS spectrum (optional) - One merged MS spectrum (optional) - many MS/MS spectra (optional) - many MS spectra (optional)
Each non-merged spectrum has an index which can be used to access the spectrum.
In the future we might add some additional information like chromatographic peak or something similar MsData Class } @@ -32,6 +32,8 @@ df \section{Public fields}{ \if{html}{\out{
Detectable: Detectable elements are added to the chemical alphabet, if there are indications for them (e.g. in isotope pattern) list(character) [optional]} -\item{\code{ilpTimeout}}{\link{Timeout} [optional]} +\item{\code{ilpTimeout}}{Timout settings for the ILP solver used for fragmentation tree computation secondsPerInstance: Set the maximum number of seconds for computing a single compound. Set to 0 to disable the time constraint. secondsPerTree: Set the maximum number of seconds for a single molecular formula check. Set to 0 to disable the time constraint \link{Timeout} [optional]} -\item{\code{useHeuristic}}{\link{UseHeuristic} [optional]} +\item{\code{useHeuristic}}{Mass thresholds for heuristic fragmentation tree computation which dramatically speeds up computations. useHeuristicAboveMz: For compounds above this threshold fragmentation trees will be computed heuristically for ranking. Tree that will be kept (numberOfCandidates) will be recomputed exactly useOnlyHeuristicAboveMz:For compounds above this threshold fragmentation trees will be computed heuristically. \link{UseHeuristic} [optional]} \item{\code{injectSpecLibMatchFormulas}}{If true formula candidates that belong to spectral library matches above a certain threshold will we inject/preserved for further analyses no matter which score they have or which filter is applied character [optional]} @@ -156,9 +156,9 @@ Initialize a new Sirius class. \item{\code{detectableElements}}{These configurations hold the information how to autodetect elements based on the given formula constraints. Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.
Detectable: Detectable elements are added to the chemical alphabet, if there are indications for them (e.g. in isotope pattern)} -\item{\code{ilpTimeout}}{ilpTimeout} +\item{\code{ilpTimeout}}{Timout settings for the ILP solver used for fragmentation tree computation secondsPerInstance: Set the maximum number of seconds for computing a single compound. Set to 0 to disable the time constraint. secondsPerTree: Set the maximum number of seconds for a single molecular formula check. Set to 0 to disable the time constraint} -\item{\code{useHeuristic}}{useHeuristic} +\item{\code{useHeuristic}}{Mass thresholds for heuristic fragmentation tree computation which dramatically speeds up computations. useHeuristicAboveMz: For compounds above this threshold fragmentation trees will be computed heuristically for ranking. Tree that will be kept (numberOfCandidates) will be recomputed exactly useOnlyHeuristicAboveMz:For compounds above this threshold fragmentation trees will be computed heuristically.} \item{\code{injectSpecLibMatchFormulas}}{If true formula candidates that belong to spectral library matches above a certain threshold will we inject/preserved for further analyses no matter which score they have or which filter is applied} diff --git a/client-api_r/generated/man/SpectralLibraryMatch.Rd b/client-api_r/generated/man/SpectralLibraryMatch.Rd index 5c9c7a55..79f904a5 100644 --- a/client-api_r/generated/man/SpectralLibraryMatch.Rd +++ b/client-api_r/generated/man/SpectralLibraryMatch.Rd @@ -36,9 +36,11 @@ df \item{\code{rank}}{integer [optional]} -\item{\code{similarity}}{numeric} +\item{\code{similarity}}{Similarity between query and reference spectrum numeric} -\item{\code{sharedPeaks}}{integer [optional]} +\item{\code{sharedPeaks}}{Number of shared/matched peaks integer [optional]} + +\item{\code{sharedPeakMapping}}{List of paired/matched peak indices. Maps indices of peaks from the query spectrum (mass sorted) to indices of matched peaks in the reference spectrum (mass sorted) list(\link{PeakPair}) [optional]} \item{\code{querySpectrumIndex}}{integer} @@ -54,13 +56,19 @@ df \item{\code{adduct}}{character [optional]} -\item{\code{exactMass}}{character [optional]} +\item{\code{exactMass}}{numeric [optional]} \item{\code{smiles}}{character [optional]} +\item{\code{type}}{character [optional]} + \item{\code{inchiKey}}{character} +\item{\code{referenceSpectrumType}}{character [optional]} + \item{\code{referenceSpectrum}}{\link{BasicSpectrum} [optional]} + +\item{\code{querySpectrumType}}{character [optional]} } \if{html}{\out{
Defaults to BIO + Custom Databases. Possible values are available to Database API. list(character) [optional]} -\item{\code{peakDeviationPpm}}{Maximum allowed mass deviation in ppm for matching peaks. numeric [optional]} - \item{\code{precursorDeviationPpm}}{Maximum allowed mass deviation in ppm for matching the precursor. If not specified, the same value as for the peaks is used. numeric [optional]} -\item{\code{scoring}}{Specify scoring method to match spectra INTENSITY: Intensity weighted. Each peak matches at most one peak in the other spectrum. GAUSSIAN: Treat peaks as (un-normalized) Gaussians and score overlapping areas of PDFs. Each peak might score against multiple peaks in the other spectrum. 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. character [optional]} +\item{\code{minSimilarity}}{Minimal spectral similarity of a spectral match to be considered a hit. numeric [optional]} + +\item{\code{minNumOfPeaks}}{Minimal number of matching peaks of a spectral match to be considered a hit. integer [optional]} + +\item{\code{enableAnalogueSearch}}{Enable analogue search in addition to the identity spectral library search character [optional]} + +\item{\code{minSimilarityAnalogue}}{Minimal spectral similarity of a spectral match to be considered an analogue hit. numeric [optional]} + +\item{\code{minNumOfPeaksAnalogue}}{Minimal number of matching peaks of a spectral match to be considered an analogue hit. integer [optional]} + +\item{\code{scoring}}{NO LONGER SUPPORTED (IGNORED) Specify scoring method to match spectra INTENSITY: Intensity weighted. Each peak matches at most one peak in the other spectrum. GAUSSIAN: Treat peaks as (un-normalized) Gaussians and score overlapping areas of PDFs. Each peak might score against multiple peaks in the other spectrum. 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. character [optional]} + +\item{\code{peakDeviationPpm}}{NO LONGER SUPPORTED (IGNORED) Maximum allowed mass deviation in ppm for matching peaks. numeric [optional]} } \if{html}{\out{}} } @@ -71,9 +81,14 @@ Initialize a new SpectralLibrarySearch class. \if{html}{\out{
Defaults to BIO + Custom Databases. Possible values are available to Database API.} -\item{\code{peakDeviationPpm}}{Maximum allowed mass deviation in ppm for matching peaks.} - \item{\code{precursorDeviationPpm}}{Maximum allowed mass deviation in ppm for matching the precursor. If not specified, the same value as for the peaks is used.} -\item{\code{scoring}}{Specify scoring method to match spectra INTENSITY: Intensity weighted. Each peak matches at most one peak in the other spectrum. GAUSSIAN: Treat peaks as (un-normalized) Gaussians and score overlapping areas of PDFs. Each peak might score against multiple peaks in the other spectrum. 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.} +\item{\code{minSimilarity}}{Minimal spectral similarity of a spectral match to be considered a hit.} + +\item{\code{minNumOfPeaks}}{Minimal number of matching peaks of a spectral match to be considered a hit.} + +\item{\code{enableAnalogueSearch}}{Enable analogue search in addition to the identity spectral library search} + +\item{\code{minSimilarityAnalogue}}{Minimal spectral similarity of a spectral match to be considered an analogue hit.} + +\item{\code{minNumOfPeaksAnalogue}}{Minimal number of matching peaks of a spectral match to be considered an analogue hit.} + +\item{\code{scoring}}{NO LONGER SUPPORTED (IGNORED) Specify scoring method to match spectra INTENSITY: Intensity weighted. Each peak matches at most one peak in the other spectrum. GAUSSIAN: Treat peaks as (un-normalized) Gaussians and score overlapping areas of PDFs. Each peak might score against multiple peaks in the other spectrum. 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.} + +\item{\code{peakDeviationPpm}}{NO LONGER SUPPORTED (IGNORED) Maximum allowed mass deviation in ppm for matching peaks.} \item{\code{...}}{Other optional arguments.} } diff --git a/client-api_r/generated/man/SpectrumAnnotation.Rd b/client-api_r/generated/man/SpectrumAnnotation.Rd index 06fbfdac..46e8031b 100644 --- a/client-api_r/generated/man/SpectrumAnnotation.Rd +++ b/client-api_r/generated/man/SpectrumAnnotation.Rd @@ -42,9 +42,13 @@ df \item{\code{massDeviationPpm}}{Relative mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in ppm numeric [optional]} -\item{\code{structureAnnotationSmiles}}{EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation Substructure highlighting (bond and atom indices) refer to this specific SMILES. If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might not match correctly anymore. Null if substructure annotation not available or not requested. character [optional]} +\item{\code{structureAnnotationSmiles}}{EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.
Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation Substructure highlighting (bond and atom indices) refer to this specific SMILES. If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might not match correctly anymore.
Null if substructure annotation not available or not requested. character [optional]} -\item{\code{structureAnnotationScore}}{EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles) Null if substructure annotation not available or not requested. numeric [optional]} +\item{\code{structureAnnotationName}}{EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.
Name of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation.
Null if substructure annotation not available or not requested. character [optional]} + +\item{\code{structureAnnotationSvg}}{EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.
SVG graphics of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation Substructure highlighting (bond and atom indices) refers to this SVG.
Null if substructure annotation not available or not requested. character [optional]} + +\item{\code{structureAnnotationScore}}{EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.
Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles)
Null if substructure annotation not available or not requested. numeric [optional]} } \if{html}{\out{}} } @@ -79,6 +83,8 @@ Initialize a new SpectrumAnnotation class. massDeviationMz = NULL, massDeviationPpm = NULL, structureAnnotationSmiles = NULL, + structureAnnotationName = NULL, + structureAnnotationSvg = NULL, structureAnnotationScore = NULL, ... )}\if{html}{\out{}} @@ -97,9 +103,13 @@ Initialize a new SpectrumAnnotation class. \item{\code{massDeviationPpm}}{Relative mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in ppm} -\item{\code{structureAnnotationSmiles}}{EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation Substructure highlighting (bond and atom indices) refer to this specific SMILES. If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might not match correctly anymore. Null if substructure annotation not available or not requested.} +\item{\code{structureAnnotationSmiles}}{EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.
Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation Substructure highlighting (bond and atom indices) refer to this specific SMILES. If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might not match correctly anymore.
Null if substructure annotation not available or not requested.} + +\item{\code{structureAnnotationName}}{EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.
Name of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation.
Null if substructure annotation not available or not requested.} + +\item{\code{structureAnnotationSvg}}{EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.
SVG graphics of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation Substructure highlighting (bond and atom indices) refers to this SVG.
Null if substructure annotation not available or not requested.} -\item{\code{structureAnnotationScore}}{EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable. Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles) Null if substructure annotation not available or not requested.} +\item{\code{structureAnnotationScore}}{EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.
Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles)
Null if substructure annotation not available or not requested.} \item{\code{...}}{Other optional arguments.} } diff --git a/client-api_r/generated/man/StatisticsTable.Rd b/client-api_r/generated/man/StatisticsTable.Rd new file mode 100644 index 00000000..610ada2b --- /dev/null +++ b/client-api_r/generated/man/StatisticsTable.Rd @@ -0,0 +1,314 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/statistics_table.R +\docType{class} +\name{StatisticsTable} +\alias{StatisticsTable} +\title{StatisticsTable} +\format{ +An \code{R6Class} generator object +} +\description{ +StatisticsTable Class + +StatisticsTable Class +} +\details{ +Create a new StatisticsTable +} +\examples{ + +## ------------------------------------------------ +## Method `StatisticsTable$toList` +## ------------------------------------------------ + +# convert array of StatisticsTable (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{